- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我使用不同版本的方案(Gambit-C 和 Guile)并且我已经为(大部分)Gambit-C 的关键字编写了一个语法文件。但是,我只想在为 Gambit-C 使用文件时使用它。
从我的 vimrc 获取它不起作用,因为方案语法是在我的 vimrc 之后获取的,如果我使用 -s < scriptin > 或 -c < cmd > 获取它,它只适用于打开的第一个文件,我必须为每个额外的文件/参数获取它。
我看到了this解决方案部分解决了我的问题,但我真的不希望 vim 对 every 方案文件使用 Gambit-C 语法。我也尝试添加
if exists("b:is_gambit") || exists("is_gambit")
"syntax extensions
....."
endif
并像 chicken scheme vim help 中显示的那样使用它但这没有用,然后我意识到它似乎也不适用于鸡方案(即在“.vim/ftplugin/scheme.vim”文件中设置“let b:is_chicken”不会将鸡语法添加到方案中) !!
我是不是对变量 "(let b:is_chicken)"和 (let b:is_gambit) 做错了什么,或者是否有另一种方法让它适用于选定的方案文件,例如在所有文件之后制作 .vimrc 源文件加载了吗?
更新:事实证明,出于某种原因,“.vim/ftplugin/scheme.vim”没有获取源并且变量“b:is_chicken”没有设置(这可以使用“:scriptnames”或“echo”检查b:is_chicken")。然后我把 "let b:is_chicken"放在 ".vim/syntax/scheme.vim"中,chicken scheme 语法就起作用了。虽然这不区分不同的方案文件。
最佳答案
似乎有三种方法可以做我想做的事,我需要(尝试)理解变量、autocmd 和模式行
将以下任何一项添加到将用于 Gambit-C 文件的 vimrc(即 vi -u {vimrc} [Gambit-C 文件])
let g:is_gambit=1 "" This works on all the buffers
或
:autocmd BufRead *.scm let b:is_gambit "" This works for all the buffers but is redundant given the above.
并放置表单的语法文件
if exists("b:is_gambit") || exists("is_gambit")
"syntax extensions
....."
endif
如上设置为“.vim/after/syntax/scheme.vim”。
注意: 在 -u {vimrc} 中设置 b:is_gambit 只为当前缓冲区设置它,而 g:is_gambit 意味着所有打开的(方案.i.e. ".scm")缓冲区(如果 b:is_gambit 设置在 ".vim/syntax/scheme.vim"它适用于所有缓冲区)。对于 variables , b = 当前缓冲区和 g = 全局。
或者……
添加到将用于 Gambit-C 文件的 vimrc(即 vi -u {vimrc} [Gambit-C 文件])
:autocmd BufEnter *.scm source /path/to/file/gambitc.vim ""Note BufEnter not BufRead
其中 gambitc.vim 是 Gambit-C 的语法文件。
注意:这里的gambitc.vim只需要在scheme语法中加入额外的语法即可
和……
正确解释here在你的通用 vimrc 中设置模式行并将 Gambit-C 语法文件放在“.vim/syntax/”中以不同的名称(例如“.vim/syntax/gambitc.vim”)并通过将其放在文件
:source /usr/share/vim/vim80/syntax/scheme.vim
或任何方案语法文件的路径。
然后在每个你想使用 Gambit-C 语法类型的文件中
;; vim: filetype=gambitc
即从当前语言注释这一行,然后编写语句。
如果我的任何解决方案有任何问题,请告诉我,我个人更喜欢第二个,因为它在将它移植到不同的机器时涉及更少的工作,尽管我怀疑使用“g:is_gambit”方法更有效
关于Vim 8.0 扩展了 scheme 的语法高亮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51910609/
在这个 fiddle 上,函数完美地完成了工作,但我需要稍微调整连接。 该点击甚至需要是父 div 的 addClass(深色/浅色)(true 或 false)。 如果是深色,则添加 Bright
我正在使用 Windows.UI.ViewManagement.UISettings 来获取系统强调色,但该类似乎没有任何亮/暗模式的方法或属性。我找不到此功能的文档,我该如何检测? PS:我正在制作
在使用 iOS 13 在明暗模式之间切换时,我遇到了显示键盘的异常行为。 该 View 有一个 inputAccessoryView 供用户输入消息。当然后在键盘显示的情况下切换亮/暗模式时,亮/暗模
我正在开发一个支持多个主题的 iOS 应用程序。有些主题使用深色背景,有些使用浅色。一些默认图标在深色/浅色背景中不可见。我在 xcassets 中看到一个选项,可以为不同的颜色模式添加图像。我的目标
一些上下文:Sciter (纯 win32 应用程序)已经能够呈现类似 UWP 的 UI: 在深色模式下: 在灯光模式下: Windows 10.1803 在设置小程序中引入深色/浅色开关 as se
我是一名优秀的程序员,十分优秀!