Compare commits
2 commits
5a42e61598
...
d8a2687701
Author | SHA1 | Date | |
---|---|---|---|
d8a2687701 | |||
0b1f165f85 |
8 changed files with 155 additions and 202 deletions
|
@ -83,6 +83,8 @@
|
||||||
extraPackages = [
|
extraPackages = [
|
||||||
deprekages.xontrib-whole-word-jumping
|
deprekages.xontrib-whole-word-jumping
|
||||||
deprekages.xontrib-term-integrations
|
deprekages.xontrib-term-integrations
|
||||||
|
deprekages.xontrib-prompt-bar
|
||||||
|
deprekages.xontrib-termcolors
|
||||||
deprekages.xontrib-sh
|
deprekages.xontrib-sh
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
@ -121,6 +121,7 @@ with pkgs;
|
||||||
deprekages.vja
|
deprekages.vja
|
||||||
wget
|
wget
|
||||||
wireshark-cli
|
wireshark-cli
|
||||||
|
zellij
|
||||||
zstd
|
zstd
|
||||||
zip
|
zip
|
||||||
|
|
||||||
|
|
|
@ -120,12 +120,16 @@ flake-utils.lib.eachDefaultSystem (
|
||||||
# xonsh and xontribs
|
# xonsh and xontribs
|
||||||
xontrib-whole-word-jumping = callPackage ./xontrib-whole-word-jumping.nix {};
|
xontrib-whole-word-jumping = callPackage ./xontrib-whole-word-jumping.nix {};
|
||||||
xontrib-term-integrations = callPackage ./xontrib-term-integrations.nix {};
|
xontrib-term-integrations = callPackage ./xontrib-term-integrations.nix {};
|
||||||
|
xontrib-prompt-bar = callPackage ./xontrib-prompt-bar.nix {};
|
||||||
|
xontrib-termcolors = callPackage ./xontrib-termcolors.nix {};
|
||||||
xontrib-sh = callPackage ./xontrib-sh.nix {};
|
xontrib-sh = callPackage ./xontrib-sh.nix {};
|
||||||
|
|
||||||
xonsh-with-xontribs = pkgs.xonsh.override {
|
xonsh-with-xontribs = pkgs.xonsh.override {
|
||||||
extraPackages = pythonPackages: [
|
extraPackages = pythonPackages: [
|
||||||
xontrib-whole-word-jumping
|
xontrib-whole-word-jumping
|
||||||
xontrib-term-integrations
|
xontrib-term-integrations
|
||||||
|
xontrib-prompt-bar
|
||||||
|
xontrib-termcolors
|
||||||
xontrib-sh
|
xontrib-sh
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
32
packages/xontrib-prompt-bar.nix
Normal file
32
packages/xontrib-prompt-bar.nix
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
callPackage,
|
||||||
|
fetchPypi,
|
||||||
|
python3Packages,
|
||||||
|
xonsh
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
|
||||||
|
# Create a version of xonsh as a python package,
|
||||||
|
# matching the version installed on the syste,
|
||||||
|
xonsh-python = callPackage ./xonsh-python-package.nix { inherit xonsh; };
|
||||||
|
|
||||||
|
in python3Packages.buildPythonPackage rec {
|
||||||
|
pname = "xontrib_prompt_bar";
|
||||||
|
version = "0.5.8";
|
||||||
|
format = "pyproject";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
hash = "sha256-955TqiUm+s/0S2TkaSgyUDe3I5596/A2mHb+SpG0VeA=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = with python3Packages; [
|
||||||
|
setuptools
|
||||||
|
wheel
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with python3Packages; [
|
||||||
|
xonsh-python
|
||||||
|
pdm-pep517
|
||||||
|
];
|
||||||
|
}
|
32
packages/xontrib-termcolors.nix
Normal file
32
packages/xontrib-termcolors.nix
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{
|
||||||
|
callPackage,
|
||||||
|
fetchPypi,
|
||||||
|
python3Packages,
|
||||||
|
xonsh
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
|
||||||
|
# Create a version of xonsh as a python package,
|
||||||
|
# matching the version installed on the syste,
|
||||||
|
xonsh-python = callPackage ./xonsh-python-package.nix { inherit xonsh; };
|
||||||
|
|
||||||
|
in python3Packages.buildPythonPackage rec {
|
||||||
|
pname = "xontrib-termcolors";
|
||||||
|
version = "0.2.0";
|
||||||
|
format = "pyproject";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
hash = "sha256-ZaVurvHbHFr0fvIc/MeBVqiYFtcbXcRl41GzgI26cIw=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = with python3Packages; [
|
||||||
|
setuptools
|
||||||
|
wheel
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with python3Packages; [
|
||||||
|
xonsh-python
|
||||||
|
pdm-pep517
|
||||||
|
];
|
||||||
|
}
|
|
@ -30,6 +30,7 @@ config = {
|
||||||
|
|
||||||
-- Improve tab viewing by disabling native wonk,
|
-- Improve tab viewing by disabling native wonk,
|
||||||
-- and make it behave more like Tmux.
|
-- and make it behave more like Tmux.
|
||||||
|
hide_tab_bar_if_only_one_tab = true,
|
||||||
use_fancy_tab_bar = false,
|
use_fancy_tab_bar = false,
|
||||||
tab_bar_at_bottom = true,
|
tab_bar_at_bottom = true,
|
||||||
tab_max_width = 32,
|
tab_max_width = 32,
|
||||||
|
@ -73,128 +74,8 @@ config = {
|
||||||
},
|
},
|
||||||
|
|
||||||
-- Key bindings.
|
-- Key bindings.
|
||||||
leader = { key = "`" },
|
|
||||||
keys = {
|
keys = {
|
||||||
|
|
||||||
-- Tmux keybindings: tabs and splits.
|
|
||||||
{
|
|
||||||
key = "c",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.SpawnTab("CurrentPaneDomain"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "RightArrow",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivatePaneDirection("Right"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "UpArrow",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivatePaneDirection("Up"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "DownArrow",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivatePaneDirection("Down"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = ";",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivatePaneDirection("Next"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "v",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.SplitVertical({ domain = "CurrentPaneDomain" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "h",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.SplitHorizontal({ domain = "CurrentPaneDomain" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "5",
|
|
||||||
mods = "LEADER|SHIFT",
|
|
||||||
action = act.SplitVertical({ domain = "CurrentPaneDomain" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "'",
|
|
||||||
mods = "LEADER|SHIFT",
|
|
||||||
action = act.SplitHorizontal({ domain = "CurrentPaneDomain" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "1",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(0),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "2",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(1),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "3",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(2),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "4",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(3),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "5",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(4),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "6",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(5),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "7",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(6),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "8",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(7),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "9",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(8),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "0",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.ActivateTab(10),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "x",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.CloseCurrentPane({ confirm = true }),
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Tmux keybindings: misc.
|
|
||||||
{
|
|
||||||
key = "`",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.SendKey({ key = "`" }),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "d",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.DetachDomain("CurrentPaneDomain"),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key = "z",
|
|
||||||
mods = "LEADER",
|
|
||||||
action = act.TogglePaneZoomState,
|
|
||||||
},
|
|
||||||
|
|
||||||
-- Generic customization.
|
-- Generic customization.
|
||||||
{ key = "l", mods = "SHIFT|CTRL", action = "ShowDebugOverlay" },
|
{ key = "l", mods = "SHIFT|CTRL", action = "ShowDebugOverlay" },
|
||||||
{ key = "Enter", mods = "ALT", action = "DisableDefaultAssignment" },
|
{ key = "Enter", mods = "ALT", action = "DisableDefaultAssignment" },
|
||||||
|
@ -212,15 +93,14 @@ font_overrides = {
|
||||||
utol = 13,
|
utol = 13,
|
||||||
trailblazer = 11,
|
trailblazer = 11,
|
||||||
kanbaru = 12,
|
kanbaru = 12,
|
||||||
aigis = 12;
|
aigis = 12,
|
||||||
komashi = 12;
|
komashi = 12,
|
||||||
}
|
}
|
||||||
|
|
||||||
if font_overrides[hostname] ~= nil then
|
if font_overrides[hostname] ~= nil then
|
||||||
config.font_size = font_overrides[hostname]
|
config.font_size = font_overrides[hostname]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Increase tab bar spacing.
|
-- Increase tab bar spacing.
|
||||||
--
|
--
|
||||||
|
|
|
@ -25,8 +25,6 @@ warnings.warn = warn
|
||||||
# Xonsh configuration
|
# Xonsh configuration
|
||||||
#
|
#
|
||||||
|
|
||||||
# Load our Xonsh extensions.
|
|
||||||
xontrib load whole_word_jumping coreutils term_integration sh
|
|
||||||
|
|
||||||
# Squish down long CWD paths,
|
# Squish down long CWD paths,
|
||||||
$DYNAMIC_CWD_WIDTH="30%"
|
$DYNAMIC_CWD_WIDTH="30%"
|
||||||
|
@ -79,7 +77,6 @@ PATH_ADDS = []
|
||||||
#
|
#
|
||||||
# Per-platform and per-machine environment.
|
# Per-platform and per-machine environment.
|
||||||
#
|
#
|
||||||
|
|
||||||
try_source(socket.gethostname().split('.')[0])
|
try_source(socket.gethostname().split('.')[0])
|
||||||
try_source(sys.platform)
|
try_source(sys.platform)
|
||||||
|
|
||||||
|
@ -129,3 +126,8 @@ except Exception as e:
|
||||||
|
|
||||||
if XONSHRC_VERBOSE:
|
if XONSHRC_VERBOSE:
|
||||||
print("Final color scheme: " + $XONSH_COLOR_STYLE)
|
print("Final color scheme: " + $XONSH_COLOR_STYLE)
|
||||||
|
|
||||||
|
# Prompt config.
|
||||||
|
|
||||||
|
# Load our Xonsh extensions.
|
||||||
|
xontrib load whole_word_jumping coreutils sh term_integration prompt_bar
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
xontrib-whole-word-jumping
|
xontrib-whole-word-jumping
|
||||||
xontrib-bashisms
|
xontrib-sh
|
||||||
xontrib-term-integrations
|
xontrib-term-integrations
|
||||||
xontrib-abbrevs
|
xontrib-prompt-bar
|
||||||
|
|
Loading…
Add table
Reference in a new issue