Giter VIP home page Giter VIP logo

codeedittextview's People

Contributors

austincondiff avatar thecoolwinter avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

codeedittextview's Issues

โœจ Emphasize API

Description

There's a growing need for an API for emphasizing text in the editor view. This has already been implemented for bracket pair highlighting (#186), but should be separated from the bracket pair code and made into a public API.

Some things that will use this API:

  • Search in file
  • Project find (CE, when selecting a find navigator search result)
  • Find in file
  • Bracket pair highlighting

Alternatives Considered

No response

Additional Context

No response

Screenshots

No response

๐Ÿž Font resize doesn't cause layout for lines previously outside the viewport

Description

When changing font size the number of lines in the viewport may change if the difference in size is large enough. This causes lines to be displayed, but layout regeneration is not caused until something like a scroll action occurs.

To Reproduce

  1. Open a document
  2. Change the font size to something large (20)
  3. Change the font size to something small (4)

Observe that there are lines visible with the previous font size.

Expected Behavior

Changing the font size should cause layout for all visible lines.

Version Information

CodeEditTextView: main (40d8e88)
macOS: 13.6.1
Xcode: 15.0

Additional Context

No response

Screenshots

Screen.Recording.2023-12-09.at.3.16.59.PM.mov

โœจ Capability to render Whitespace Characters

Description

Similar to other editors, like SublimeText, VSCode, and Zed, whitespace characters for spaces
and tabs can optionally be rendered.

Some Examples:

SublimeText rendering tabs

Screenshot 2024-02-10 at 9 38 36 PM

VSCode Rendering Spaces

Screenshot 2024-02-10 at 9 39 21 PM

Zed rendering spaces

Screenshot 2024-02-10 at 9 37 50 PM

Alternatives Considered

No response

Additional Context

No response

Screenshots

No response

๐Ÿž When selecting text with keyboard, scroll is not updated properly

Description

If selecting text beyond bottom of the text view viewport with โ‡งโ–พ, the scroll isn't immediately adjusted to show the bottom of the selected text until selected a few more lines after that point.

To Reproduce

  1. Select some text beyond the bottom of the viewport with โ‡งโ–พ.
  2. Notice scroll position isn't updated until pressing it a few more times.

Expected Behavior

The scroll should be update after the partial or complete line below the viewport is selected.

Version Information

CodeEditTextView: 0.7.0
macOS: 14.0
Xcode: 15.0

๐Ÿž Selection highlight overflow is drawn just above bottom viewport edge

Description

When selecting text beyond the bottom edge (top is fine), the selection highlight is drawn just above the bottom edge.

To Reproduce

  1. Select multiple lines of text
  2. Scroll up so that selection highlight exceeds the bottom edge of the text view viewport.

Expected Behavior

Selection highlight is drawn flush with the bottom edge of the text view viewport.

Version Information

CodeEditTextView: 0.7.0
macOS: 14.0
Xcode: 15.0

Screenshots

image

โœจ Text selection with round corners

Is your feature request related to a problem? Please describe.

No response

Describe the solution you'd like

Text selection with round corner like in VSCode.

Describe alternatives you've considered

VSCode

Additional context

Screen Shot 2022-05-19 at 13 00 29

๐Ÿž Text selection is janky while dragging across lines

Description

While making a multi-line text selection, it can appear janky because the background shifts briefly while dragging across lines.

To Reproduce

  1. Make a multi-line selection.
  2. Notice that while dragging across lines the selection background sometimes shifts.

Expected Behavior

The selection background should remain in the same place while dragging across lines.

Version Information

CodeEditTextView: 0.7.0
macOS: 14.0
Xcode: 15.0

Screenshots

CodeEdit

Screen.Recording.2023-12-20.at.11.50.00.PM.mov

CodeEdit (frame-by-frame tracking)

Screen.Recording.2023-12-21.at.12.00.05.AM.mov

Xcode

Screen.Recording.2023-12-20.at.11.48.46.PM.mov

๐Ÿž Last line touching the editor view's edge is invisible

Description

When your code excedes

To Reproduce

  1. Open a file that has enough code to fill the editor
  2. Observe

Expected Behavior

The line should be visible.

Version Information

CodeEdit: 0.0.3-alpha (37)
macOS: 14.3 Beta (23D5033f)
Xcode: 15.2 beta (15C5500c)

Additional Context

No response

Screenshots

Example.mov

About the Mac

โœจ Find/Replace in Document

Is your feature request related to a problem? Please describe.
We should be able to find strings of text in a document and browse different occurrences.

Concept
08-macOS-code-edit-find

๐Ÿž Text view does not handle inactive state

Description

When window or pane is inactive, the textview does not handle inactive state.

  • Insertion point should be hidden
  • Selection background if any should change color to a more gray color

To Reproduce

  1. Click out of window so it is inactive
  2. Notice insertion point is still visible or text selection background color is still the same

Expected Behavior

When inactive (either the window or the instance of the text view not in focus if there are multiple present), the insertion point should be hidden and the text selection background color should be more gray (see Xcode for reference)

Version Information

CodeEditTextView: 0.7.0
macOS: 14.0
Xcode: 15.0

Screenshots

CodeEdit

Screenshot 2023-12-20 at 11 38 09โ€ฏPM image image

Xcode

image image Screenshot 2023-12-20 at 11 44 49โ€ฏPM

โœจ VSCode-Like Selection Style

Description

Add an option to have selections follow the Web style. That is, selections don't select the entire visible line if the line is selected. Selection rects only follow text rects.

VSCode:
Screenshot 2024-01-16 at 1 13 57 PM

Xcode (the default selection style for macOS):
Screenshot 2024-01-16 at 1 14 36 PM

Related: #2

Alternatives Considered

No response

Additional Context

No response

Screenshots

No response

Input not cleared when using Chinese input method

Description

When using Chinese input method, chineses and original pinyin characters remains both.

To Reproduce

Using Chinese input method or other else

Expected Behavior

Only chineses remains

Version Information

CodeEditTextView: [0.7.3]
macOS: [14.3.1]
Xcode: [15.0.1]

Additional Context

No response

Screenshots

image
2024-04-02.14.50.57.mov

๐Ÿž Cursors use shared blink timer

Cursors right now share a timer. If the editor is unfocused the cursors stop blinking, but if another editor is focused all editor's cursors begin to blink.

The cursor blink timer needs to be attached to a TextView instead of a global timer.

๐Ÿž Emphasis text color should be black regardless of color scheme

Description

The emphasis background color is yellow. The text should be black regardless of the users color scheme to be visible on this background. Currently, when the user has a light color scheme set, it is black as expected, however the text color is white when the user has a dark color scheme set.

Expected Behavior

The emphasis text color should be black regardless of color scheme so that it is visible on the yellow background.

Version Information

CodeEditTextView: 0.7.0
macOS: 14.0
Xcode: 15.0

โœจ Add support for indenting wrapped lines

Is your feature request related to a problem? Please describe.

In the enhancement requested by CodeEditApp/CodeEdit#868, the request to add configurable indentation to wrapped lines is beyond the current capabilities of CodeEditTextView.

image

Describe the solution you'd like

Add a parameter or option which allows custom indentation to be added for wrapped lines. May require enhancement + PR in STTextView

Additional Context

Example behavior in Xcode:

4 spaces

image

image

12 spaces

image

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.