mirror of
https://github.com/RGBCube/nu_scripts
synced 2025-08-02 15:17:47 +00:00
Rename edit to nve to avoid potential conflicts (#768)
- rename `edit` to `nve` to avoid potential conflicts - `e`, `c`, `v`, `x` export as alias - nested nvim creates new buffer when no filename as args - `cwdhist` use Alt+o as default Co-authored-by: nash <nash@iffy.me>
This commit is contained in:
parent
f6bbfe5b77
commit
a31696ea2a
2 changed files with 35 additions and 71 deletions
|
@ -40,7 +40,7 @@ def __cwdhist_menu [] {
|
||||||
def __cwdhist_keybinding [] {
|
def __cwdhist_keybinding [] {
|
||||||
{
|
{
|
||||||
name: cwdhist_menu
|
name: cwdhist_menu
|
||||||
modifier: control
|
modifier: alt
|
||||||
keycode: char_o
|
keycode: char_o
|
||||||
mode: [emacs, vi_normal, vi_insert]
|
mode: [emacs, vi_normal, vi_insert]
|
||||||
event: [
|
event: [
|
||||||
|
@ -49,16 +49,6 @@ def __cwdhist_keybinding [] {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
def __cwdhist_editing [] {
|
|
||||||
{
|
|
||||||
name: open_command_editor
|
|
||||||
modifier: alt
|
|
||||||
keycode: char_o
|
|
||||||
mode: [emacs, vi_normal, vi_insert]
|
|
||||||
event: { send: openeditor }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
def __cwdhist_switching [] {
|
def __cwdhist_switching [] {
|
||||||
{
|
{
|
||||||
name: cwdhist_switching
|
name: cwdhist_switching
|
||||||
|
@ -118,6 +108,6 @@ export-env {
|
||||||
|
|
||||||
$env.config = ($env.config
|
$env.config = ($env.config
|
||||||
| upsert menus ($env.config.menus | append (__cwdhist_menu))
|
| upsert menus ($env.config.menus | append (__cwdhist_menu))
|
||||||
| upsert keybindings ($env.config.keybindings | append [(__cwdhist_keybinding) (__cwdhist_editing) (__cwdhist_switching)])
|
| upsert keybindings ($env.config.keybindings | append [(__cwdhist_keybinding) (__cwdhist_switching)])
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,35 +39,6 @@ def nvim_tcd [] {
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
export-env {
|
|
||||||
$env.config = ( $env.config | upsert hooks.env_change.PWD { |config|
|
|
||||||
let o = ($config | get -i hooks.env_change.PWD)
|
|
||||||
let val = (nvim_tcd)
|
|
||||||
if $o == null {
|
|
||||||
$val
|
|
||||||
} else {
|
|
||||||
$o | append $val
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
def edit [action ...file] {
|
|
||||||
if ($env.NVIM? | is-empty) {
|
|
||||||
nvim ...$file
|
|
||||||
} else {
|
|
||||||
let af = $file
|
|
||||||
| each {|f|
|
|
||||||
if ($f|str substring ..1) in ['/', '~'] {
|
|
||||||
$f
|
|
||||||
} else {
|
|
||||||
$"($env.PWD)/($f)"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let cmd = $"<cmd>($action) ($af|str join ' ')<cr>"
|
|
||||||
nvim --headless --noplugin --server $env.NVIM --remote-send $cmd
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# nvim tcd
|
# nvim tcd
|
||||||
export def tcd [path?: string] {
|
export def tcd [path?: string] {
|
||||||
let after = if ($path | is-empty) {
|
let after = if ($path | is-empty) {
|
||||||
|
@ -78,36 +49,16 @@ export def tcd [path?: string] {
|
||||||
nvim --headless --noplugin --server $env.NVIM --remote-send $"<cmd>lua HookPwdChanged\('($after)', '($env.PWD)')<cr>"
|
nvim --headless --noplugin --server $env.NVIM --remote-send $"<cmd>lua HookPwdChanged\('($after)', '($env.PWD)')<cr>"
|
||||||
}
|
}
|
||||||
|
|
||||||
export def e [...file: string] {
|
export-env {
|
||||||
if ($file|is-empty) {
|
$env.config = ( $env.config | upsert hooks.env_change.PWD { |config|
|
||||||
nvim
|
let o = ($config | get -i hooks.env_change.PWD)
|
||||||
|
let val = (nvim_tcd)
|
||||||
|
if $o == null {
|
||||||
|
$val
|
||||||
} else {
|
} else {
|
||||||
edit vsplit ...$file
|
$o | append $val
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export def c [...file: string] {
|
|
||||||
if ($file|is-empty) {
|
|
||||||
nvim
|
|
||||||
} else {
|
|
||||||
edit split ...$file
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export def v [...file: string] {
|
|
||||||
if ($file|is-empty) {
|
|
||||||
nvim
|
|
||||||
} else {
|
|
||||||
edit vsplit ...$file
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export def x [...file: string] {
|
|
||||||
if ($file|is-empty) {
|
|
||||||
nvim
|
|
||||||
} else {
|
|
||||||
edit tabnew ...$file
|
|
||||||
}
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
# drop stdout to nvim buf
|
# drop stdout to nvim buf
|
||||||
|
@ -135,6 +86,29 @@ export def opwd [] {
|
||||||
nvim-lua 'OppositePwd()'
|
nvim-lua 'OppositePwd()'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export def nve [action ...file] {
|
||||||
|
if ($env.NVIM? | is-empty) {
|
||||||
|
nvim ...$file
|
||||||
|
} else {
|
||||||
|
let af = $file
|
||||||
|
| each {|f|
|
||||||
|
if ($f|str substring ..1) in ['/', '~'] {
|
||||||
|
$f
|
||||||
|
} else {
|
||||||
|
$"($env.PWD)/($f)"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let action = if ($file | is-empty) { $action | str replace -r 'sp.*$' 'new' } else { $action }
|
||||||
|
let cmd = $"<cmd>($action) ($af|str join ' ')<cr>"
|
||||||
|
nvim --headless --noplugin --server $env.NVIM --remote-send $cmd
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export alias e = nve vsplit
|
||||||
|
export alias v = nve vsplit
|
||||||
|
export alias c = nve split
|
||||||
|
export alias x = nve tabnew
|
||||||
|
|
||||||
export def nvs [port: int=9999] {
|
export def nvs [port: int=9999] {
|
||||||
nvim --headless --listen $"0.0.0.0:($port)"
|
nvim --headless --listen $"0.0.0.0:($port)"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue