+2

Catch and deny key presses before they get into the view

Oktay Acikalin hace 14 años actualizado hace 14 años 2
How can I catch key presses and deny them before they get into the view without setting up key bindings? I want to catch all user input and then decide what to write into the view.
+2

Change newline_at_eof installation preference to true

MarkDBlackwell hace 11 años 0

It is a general, widely known practical observation that (at least some) people will leave (at least some of) their software preferences unchanged after installation.

Upon installation, the preference whether newlines are ensured at EOF on save is false.

This installation default is wreaking a small degree of havoc with programmers using versioning systems including git.

The reasonable and usual practice of software in Unix and elsewhere is to expect, and to maintain, that all lines end with a newline. This includes the final line. For more information, here are two links:

http://stackoverflow.com/questions/729692/why-should-files-end-with-a-newline

http://slashdot.org/comments.pl?sid=165492&cid=13808398

To be more precise, after installation, in Default/Preferences.sublime-settings these statements occur:

  // Set to true to ensure the last line of the file ends in a newline
  // character when saving
  "ensure_newline_at_eof_on_save": false,

This should be changed instead so after installation automatically the statements are:

  // Set to false to ensure the last line of the file does not end in a newline
  // character when saving
  "ensure_newline_at_eof_on_save": true,

Further, the editor must not display a new empty line after saving as it does now when this preference is set to true. This even though there is a final newline.

The editor may be treating newlines erroneously as line separators and not correctly as line terminators. This possibility is described in the links above.

+2

package control plugin broken in Sublime 3 on OSX

Sean Carolan hace 11 años en Plugin announcements 0
When I try to install a plugin I get this:

startup, version: 3059 osx x64 channel: stable
executable: /Applications/Sublime Text.app/Contents/MacOS/Sublime Text
working dir: /
packages path: /Users/seancarolan/Library/Application Support/Sublime Text 3/Packages
state path: /Users/seancarolan/Library/Application Support/Sublime Text 3/Local
hardware concurrency: 8
zip path: /Applications/Sublime Text.app/Contents/MacOS/Packages
zip path: /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages
found 5 files for base name Default.sublime-keymap
found 1 files for base name Default.sublime-mousemap
found 1 files for base name Main.sublime-menu
loading bindings
loading pointer bindings
found 1 files for base name Default.sublime-theme
theme loaded
app ready
wrote startup cache, added files: 1 orphaned files: 3 total files: 151 cache hits: 150
pre session restore time: 0.19615
using gpu buffer for window
using gamma: 1 (err: 0)
first paint time: 0.304532
startup time: 0.325608
found 1 files for base name Default.sublime-theme
theme loaded
launching: /Applications/Sublime Text.app/Contents/MacOS/plugin_host
reloading plugin Default.block
reloading plugin Default.comment
reloading plugin Default.copy_path
reloading plugin Default.delete_word
reloading plugin Default.detect_indentation
reloading plugin Default.duplicate_line
reloading plugin Default.echo
reloading plugin Default.exec
reloading plugin Default.fold
reloading plugin Default.font
reloading plugin Default.goto_line
reloading plugin Default.history_list
reloading plugin Default.indentation
reloading plugin Default.kill_ring
reloading plugin Default.mark
reloading plugin Default.new_templates
reloading plugin Default.open_file_settings
reloading plugin Default.open_in_browser
reloading plugin Default.pane
reloading plugin Default.paragraph
reloading plugin Default.paste_from_history
reloading plugin Default.save_on_focus_lost
reloading plugin Default.scroll
reloading plugin Default.set_unsaved_view_name
reloading plugin Default.side_bar
reloading plugin Default.sort
reloading plugin Default.swap_line
reloading plugin Default.switch_file
reloading plugin Default.symbol
reloading plugin Default.transform
reloading plugin Default.transpose
reloading plugin Default.trim_trailing_white_space
reloading plugin CSS.css_completions
reloading plugin Diff.diff
reloading plugin HTML.encode_html_entities
reloading plugin HTML.html_completions
reloading plugin Vintage.vintage
reloading plugin Vintage.vintage_commands
reloading plugin Vintage.vintage_motions
plugins loaded
loaded 837 snippets
>>> import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
132375
reloading plugin Package Control.Package Control
found 2 files for base name Main.sublime-menu
Package Control: Skipping automatic upgrade, last run at 2014-02-14 10:48:26, next run at 2014-02-14 11:48:26 or after
Package Control: Error parsing JSON from channel https://sublime.wbond.net/browse.
Exception in thread Thread-7:
Traceback (most recent call last):
File "X/threading.py", line 639, in _bootstrap_inner
File "package_control.downloaders.background_downloader in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 61, in run
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 77, in prefetch
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 77, in <listcomp>
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 219, in get_packages
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 111, in fetch
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 153, in fetch_location
File "package_control.download_manager in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 209, in fetch
File "package_control.downloaders.urllib_downloader in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 202, in download
Package Control.package_control.downloaders.downloader_exception.DownloaderException: Error downloading repository. HTTP exception InvalidURL (nonnumeric port: 'pderichs') downloading http://github.com:pderichs/sublime_rubocop.git.
Exception in thread Thread-6:
Traceback (most recent call last):
File "X/json/decoder.py", line 368, in raw_decode
File "X/json/scanner.py", line 63, in _scan_once
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 168, in fetch_location
File "X/json/__init__.py", line 309, in loads
File "X/json/decoder.py", line 352, in decode
File "X/json/decoder.py", line 370, in raw_decode
ValueError: No JSON object could be decoded
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "X/threading.py", line 639, in _bootstrap_inner
File "package_control.downloaders.background_downloader in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 61, in run
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 77, in prefetch
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 77, in <listcomp>
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 219, in get_packages
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 111, in fetch
File "package_control.providers.repository_provider in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 170, in fetch_location
Package Control.package_control.providers.provider_exception.ProviderException: Error parsing JSON from repository https://sublime.wbond.net/.
Exception in thread Thread-3:
Traceback (most recent call last):
File "X/threading.py", line 639, in _bootstrap_inner
File "package_control.commands.install_package_command in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 43, in run
File "package_control.package_installer in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 54, in make_package_list
File "package_control.package_manager in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 260, in list_available_packages
File "package_control.downloaders.background_downloader in /Users/seancarolan/Library/Application Support/Sublime Text 3/Installed Packages/Package Control.sublime-package", line 52, in get_provider
KeyError: 'https://sublime.wbond.net/'
+2

Improve selected item highlight from the filtered list (the one used by "Goto Anything..." / CTRL-P)

Carlos K. hace 12 años 0
in some situations, with a low number of files in the filtered list (2 or 3) it's hard to tell apart the item that is currently selected from the other ones listed. Could we add a bit more of highlight love to that selection? Maybe a thin border around the row or something like that?

For instance, in the following image can you easily tell which item is selected?


+2

"Close All Files" in the File menu should close all saved files first.

Ronald Jett hace 11 años 0

Alternatively, you could implement a Close All Saved Files option. 

+2

Project File Definitions

AJ Michels hace 12 años 0

For project settings it would be nice to be able to define "files" as well as "folders".  Sometime there are files that might exist outside of a directory.  Rather than including an entire folder only to exclude all but one or two files it would be nice to be able to just include specific files.  This could take many of the same parameters as the folders, name, path, etc.  Of course the exclude patterns wouldn't make sense to include.


Example:

{
    "files":
        [
            {
                "path": "/path/to/my/file.txt"
            },
            {
                "path": "/path/to/my/other/file.txt"
            }
        ]
}


PS. Great work.  This is an awesome project.  I am hoping I can get our whole development team using it.

+2

Prose with Ease

Hamish hace 11 años 0
I'm a writer not a coder but Scrivener on Linux (still in beta) is not yet able to handle the number of files and the sizes that I'm working with.  Sublime Text can, though it lacks a few of the basic features that would make it just as useful.  I'm not talking about the text formatting, which really gets in the way anyway and can be done in a word processor/LaTex later.  But being able to compile and export files as EPUB / PDF / concatenated txt, also being able to arrange the different txt files into a tree structure and also being able to edit them in a continuous draft.  Sublime Text is great as it opens instantly, I can work with thousands of fragments at once, but there does not seem to be anyway of ordering these.  Also it is hard to find specific settings and resources, tutorials solely for the prose writer....make all this a bit easier, or even have another version without any of the coding tools, and you'll have a whole new market....
+2

Rainbow Mode

AbeEstrada hace 13 años actualizado hace 13 años 0
Would be nice to have this functionality. I tried to create a syntax highlight but it seems impossible to change the background on the fly.

Original
+2

Separation of Layout and Groups

Andrew Ho hace 13 años actualizado hace 13 años 0
The idea is to separate the Layout/Group into two completely different concepts/entities.

Right now, the Layout determines the Groups (e.g. 2-column Layout automatically creates 2 Groups, http://i42.tinypic.com/30rnxi8.jp). Rather than doing this, my idea is to have the ability to create Groups that each have its own individual Layout that can be changed. Doing this implies that only one Group and it's pages are shown in the display window at any one time.

To help visualize, taking a look at the same screen shot above, all the tabs we see in both the left and right columns would be within the same Group (let's say Group 1). Say there is also a Group 2 with the files footer.phtml and footer.css, that group and its files would NOT be visible in the window, except in the Side Bar (or maybe somewhere else on the screen if the Side Bar is hidden). Switching to Group 2 (either by clicking the Group on the Side Bar or hitting ctrl+2) would then switch to viewing only the files within Group 2 using whatever Layout was originally selected for that Group. Because each Group can have it's own Layout, Group 1 could have a 2-column layout, and Group 2 could have 2-row layout.

Using myself as an example on how I would use this feature; I personally do a lot of web programming, so often I find myself editing 2-3 different files (phtml, css, js) to make changes to a single page. I am also often editing more than just one page at a time, so as I edit more and more pages, the tab count quickly gets out of hand. With this proposed idea, I could easily group each of my phtml/css/js files into Groups for each page I am editing, reducing tab clutter since the display window only displays the files in the current Group in focus. I could also change the layout for each Group independently, though I personally would most likely just leave each Group in single-page layout since I enjoy having lots of screen real-estate.

This idea provides significantly more flexibility than the current Layout/Group system for organizing one's working environment.
+2

Different font colors for matched pairs of parens

Brett Menzies hace 12 años 0
Make matching pairs of parenthesis different colors depending on how deep they are, the outside pair red, the next pair orange, yellow and so on. I think it would make long lines of math (especially trig) much easier to read, aswell as long if statement conditions that need specified orders etc.
+2

Deleting project root folder doesn't remove it from sidebar

weslly hace 13 años actualizado hace 13 años 0
There's a little bug since build 2157, when you delete the root folder of a project, the folder is moved to the trash but it stay showing in the sidebar.

I'm using build 2159 at OSX lion
+2

Goto anything doesn't support prefixing with filename if already started with symbol search

Johan Stenqvist hace 13 años actualizado por Tomek Sowiński hace 13 años 1
  1. open Goto Anything (ctrl + p)
  2. type a symbold search, i.e @something
  3. then go back and add a filename, i.e filename@something

Expected a symbol search in <filename>, but as far as I can tell that never happens.
It works as expected, however, if you start typeing the filename immediate, then the symbol search.
+2

Disable highlighting for idle splited screen

Guillaume Bersac hace 11 años 0
When we have a splited screen, the number of the line where the cursor is set is still highlighted in the idle splited screens. This is quite confusing, especially when the highlight_line option is on.

Please turn off the highlitght of the line where the cursor is set in the idle buffer
+2

Support external syntax repositories references

nox hace 12 años 0

External syntax repositories should be referenceable in syntax definitions, e.g. it should be supported to have an "include" key with value "source.erlang#comment".

+2

Set a Custom Default Icon

drew covi hace 12 años actualizado por Hans Czajkowski Jørgensen hace 11 años 2
A way to set a new default Icon (not overwritten on updates) would be really nice. Discussion here:

http://www.sublimetext.com/forum/viewtopic.php?f=2&t=8000


I've used Sublime Text now for a little over a year, and I've always felt that the icon didn't really say a whole lot about what Sublime Text actually does. I've seen a lot of basic icons that show the letter, and a lot of copies of the button theme, and even a few that show markup. 


For me I wanted to start with what Sublime Text means to me. 


It's a building tool. It creates the foundation, and so I liked the idea of blocks, and I liked the idea of abstracting the "S" a little bit. So after a few months of dwelling on it, I felt inspired to take a crack at it and I'd like to submit it to everyone if you're interested.


I started with basic blocks, and refined through a number of steps.


Image 158


and finally landed on something like this.


Image 157



This icon has been saved out at HiDPI resolution as well


http://cl.ly/3P1K2X3c0e3u2d3f2T1g


And in .ico

ico: http://cl.ly/3x172V2O2V1a0A2B2K0b


Enjoy, and feedback welcome of course. I'd love to take some ideas and run with them.

+2

Code folding bug

I don't know it's bug or feature, but this error exists both in second and third version of Sublime Text.

Image 242

+2
COMPLETADO

Be able to remap the ctrl, alt, shift, and command keys in OSX so they behave like on PC

Chris Hulbert hace 14 años actualizado por Jon Skinner hace 12 años 2
I've come from a PC using Notepad++ where i can, eg, hold ctrl and press an arrow to jump between words. But on OSX i need to hold alt to do the same thing. It'd be GREAT if there was an option to remap this, and all the other shortcuts, on osx. PLEASE
Respuesta
Jon Skinner hace 14 años
All key bindings are configurable. Take a look at Packages/Default/Default (<platform>).sublime-keymap, and copy the bindings you'd like from the Windows version into the OSX version.
+2

save_on_focus_lost doesn't check that the file has been deleted

zee hace 13 años actualizado hace 13 años 0
When save_on_focus_lost is enabled, deleting the file and then switching to ST and back leads to the file being immediately recreated with the old name. If I delete the directory, ST will start complaining that it couldn't save the file. ST should check that the file exists before saving and disable autosave if it's gone.
+2

Clojure regexes are not parsed properly

Anthony Grimes hace 13 años actualizado hace 13 años 2
Here is an example regex: #".*\"(.*)\".*"

That regex breaks Clojure highlighting, making Sublime Text 2 thing that the last quote is the start of a new string.
+2

Command palette crash

Reinier Kip hace 13 años actualizado hace 13 años 3
The command palette crashes when one does as follows:

1. Ctrl+P: Search for a file
2. Mouseclick on any entry.

This does not occur when selecting an entry by pressing RETURN.

Platform:
Windows 7 64-bit