Tag: Sublime Text

Sublime 3.2 JSON 语法的部分 Scope 改名了

导致语法高亮出问题,按此替换调整 tmTheme 文件可解决:

meta.structure.dictionary.value.json -> meta.mapping.value.json
meta.structure.dictionary.json -> meta.mapping.key.json
meta.structure.array.json -> meta.sequence.json

ref: https://forum.sublimetext.com/t/rainbow-colors-by-json-object-level-with-any-color-scheme/42968/4

另,拷贝 scope 的命令:

sublime.set_clipboard(view.scope_name(view.sel()[0].b))

Sublime 换标

挺好看

不过虽然号称解决了 HiDPI 的部分问题,但非 ASCII 在 UI 中依旧是方框,而且以前将 dpi_scale 置为 1 可以解决的方法,现在也不行了。

一些 Sublime theme

用 colorsublime 插件可以方便的预览和安装 colorsublime.com 上面的配色方案,从头到尾过了一篇,列出来一些还不错的:

daily grind, dark mosquito, easyballs, feel good, flat grammer, foggy evening, gloom, ILM shell, IR_black, into the dark, mars peacock, oceanic next, pastel, preap, resesif, riot, salmon on ice, solar sooty, sublime xoria, tronlegacy, zenburn, bold, lagacy, peacocks in space, peel, rainbow, super, turnip, zacks

选择标准:

  • 暗色调
  • 不同的关键字之间要有区分度
  • 选区要有区分度
  • 当前行要有区分度
  • 语法支持要全面

留存备忘。

和 Surface/Win 10 斗智斗勇

  • 远程桌面原始分辨率,不支持 hidpi,搜到个 side load manifest 的方案,结果最近一次更新微软似乎把这个功能砍了。最后用了 RD tabs,简单用了下,还没仔细研究。
  • Sublime 的 pacakgesync 简直神器,体验几乎完美同步,唯一的问题是,不是通过 package control 安装的自定义插件,需要手动拷贝。
  • Sublime 下要开启 "font_options":["gdi"] 否则注册表中的字体链接无效,找这个问题找的我要怀疑人生了。
  • AHK 试了各种启动方式未果,没搞懂 UAC 到底是怎么玩的,最后用计划任务启动了。如果计划任务不能启动,需要留意两点:一是启动路径需要加引号,二是看是否被自动勾选了仅在连接交流电的情况下才启动。
  • 系统是中文家庭版,切换不了语言(什么鬼),于是刺眼的宋体各种乱入,mactype 可以针对特定程序热替换,替换了清静。
  • 悲剧的是买的某个软件不能在中文系统运行,花了钱还需要 patch……
  • 输入法是最大的痛。小狼毫各种 bug,直接搞死开始菜单什么的,而且很久没有更新了,作者似乎要弃坑?(貌似还捐过钱,哎哎~)
    查问题的时候发现有个 PRIME 输入法,可以支持 RIME 的后端,不过还是问题挺多,再观望一阵;
    自带的微软拼音还不错,但不能忍受的是在 Sublime 里面不能光标跟随;
    难道要用回谷歌拼音?
    还真就用回谷歌拼音了,试了一下词库同步似乎已经挂了(不过本地也还能接受)
  • 设置的切换输入法快捷键在重新登录后会失效,比如睡眠唤醒之后、锁屏解锁之后……按此方法解决:Custom hotkeys to change input language disappear frequently,说的 Windows 8,不过 Windows 10 这个 bug(feature?)还在,方法依然有效。
    1. Go to Control Panel -> Language -> Advanced Settings
    2. Set up your Language Bar Hot Keys like you want
    3. Click “Apply language settings to the welcome screen…”
    4. Click Copy Settings and select Welcome Screen
  • 千万记住 Mactype 要排除掉 VirtualBox,千万记住 Mactype 要排除掉 VirtualBox,千万记住 Mactype 要排除掉 VirtualBox!
  • 设定的端口转发会失效,尚不明白问题出在什么地方。使用 netsh interface portproxy show all 可以看到已经设好的转发配置,但却不起作用,需要删除并重新添加才正常。

研究了一下找到了 Sublime 不能注释的元凶

问题是这样,在 gulpfile.js 里面,不能用快捷键也不能用菜单命令注释代码,检查了一下快捷键并没有冲突,在其他 js 文件中也可以正常注释。

首先注意到 gulpfile 会被自动语法识别成 Gulpfile JS,但是找不到是哪个插件干了这个事情,印象中并没有安装过什么 gulpfile 的插件。试图在插件目录全文搜索,但 sublime 的插件都是 .sublime-package 后缀的压缩包,一个一个翻开看实在是不可能的任务。TC 倒是可以搜索压缩包内的文件,但是不认识 sublime-package 后缀。那么如果告知 TC 将 sublime-package 看作压缩包是否可行呢?在配置-选项-压缩程序-配置压缩程序中添加一个新的文件类型 sublime-pacakge,并绑定到之前安装的 7zip wcx 即可。(本想绑定 TC 自带的 zip packer,但似乎是内置的,没找到绑定方法。)

顺便 TC 的这个界面的交互真是极其反人类,和 Windows 输入法快捷键配置界面有一拼:
TC add packer

这一步之后,sublime-package 文件已经被当成压缩包了,于是全文搜索了一下,发现是之前安装的一个主题 Afterglow 定义了 gulpfile js 的语法。其实这个主题只是装了并没有用,顺藤摸瓜搜索了一下,发现是一个已知问题,但是,afterglow 似乎久无人管了,PR 也没人处理,罢,反正不用,卸载完事,问题解决。

之前还尝试着重新安装 sublime,但问题依旧。不过顺带尝试了一下 PacakgeSync 这个插件,很好用,重装前后保持了所有了插件和个人设置,丢到 Dropbox 里面可以不同机器同步,就是不知道 Mac 下面兼容性如何。

PacakgeSync 还可以导出插件列表,列下发现装的还真不少:

{
    "installed_packages": [
        "AdvancedNewFile", 
        "ApplySyntax", 
        "AutoHotkey", 
        "BracketHighlighter", 
        "ColorPicker", 
        "Colorsublime", 
        "Compare Side-By-Side", 
        "ConvertToUTF8", 
        "CSS3", 
        "DataConverter", 
        "DocBlockr", 
        "Dockerfile Syntax Highlighting", 
        "EditorConfig", 
        "Emmet", 
        "ExportHtml", 
        "Git", 
        "GitGutter", 
        "GitSavvy", 
        "HTML-CSS-JS Prettify", 
        "IceWorld Color Scheme", 
        "IMESupport", 
        "Indent and braces", 
        "INI", 
        "Jade", 
        "JSHint Gutter", 
        "Keymaps", 
        "LESS", 
        "Markdown Extended", 
        "Markdown Preview", 
        "MarkdownEditing", 
        "Material Color Scheme", 
        "Mytools",
        "NFO", 
        "OmniMarkupPreviewer", 
        "Open URL", 
        "Package Control", 
        "PackageSync", 
        "Pandown", 
        "PowerCursors", 
        "PowerShell", 
        "Project Manager", 
        "Puppet", 
        "Random Everything", 
        "ScopeAlways", 
        "SideBarEnhancements", 
        "Stylus", 
        "SublimeLinter", 
        "SublimeLinter-html-tidy", 
        "Text Pastry", 
        "Theme - Bamboo", 
        "Theme - Flatland", 
        "Theme - Soda", 
        "Theme - Spacegray", 
        "Twig"
    ]
}

几个 Sublime Text 快捷键

都是 Emmet 提供的:

  • Ctrl+Shift+G 包裹选区为指定 html tag,优点是可以自动格式化,命令名字叫 Emmet: Wrap With Abbreviation
  • Ctrl+Shift+; 去除当前选区所在层级的 html tag,命令名字叫 Emmet: Remove Tag
  • Ctrl+Shift+' 高亮当前层级的 html tag 名称部分,方便替换 tag,命令为 Emmet: Rename Tag

不知道是否是默认配置。

Copyright © 2024 yet Another

Theme by Anders NorenUp ↑