Compare commits
122 Commits
master
..
8a9c2cd936
| Author | SHA1 | Date | |
|---|---|---|---|
|
8a9c2cd936
|
|||
|
48e104098c
|
|||
|
cc9022df39
|
|||
|
c7d579c476
|
|||
|
50c2423489
|
|||
|
6c1bbf8dac
|
|||
|
03a8b6427c
|
|||
|
89f9112337
|
|||
|
0df9d7aae3
|
|||
|
314f2a37b4
|
|||
|
023af993ac
|
|||
|
92c9bc16f0
|
|||
|
fc7dc3f34a
|
|||
|
5b8989ac04
|
|||
|
24c19bf2b3
|
|||
|
2040211f98
|
|||
|
acba975720
|
|||
|
ec3a489d2e
|
|||
|
e58fff5007
|
|||
|
61034bc1eb
|
|||
|
131f61128c
|
|||
|
8bf88a633f
|
|||
|
fae31cfa8c
|
|||
|
e05ed5a769
|
|||
|
0456d713b6
|
|||
|
7f449df84d
|
|||
|
893e06659d
|
|||
|
c1e04f3cbf
|
|||
|
befc25415b
|
|||
| 1c341d2dea | |||
| 90b5703be3 | |||
|
ce53c3e289
|
|||
|
8d8c6fe77f
|
|||
|
f0c10bb058
|
|||
|
5e1d243c3e
|
|||
|
f89554d807
|
|||
|
cf075a3fdd
|
|||
|
c4e543e710
|
|||
|
98ea485a6d
|
|||
|
58f342e86a
|
|||
|
c7ec59b8ae
|
|||
|
197a2b5c70
|
|||
| 747cf9c899 | |||
|
49f17be877
|
|||
|
3199f37f03
|
|||
| 81f4d7e697 | |||
| b7916c11c9 | |||
| 5b5e331648 | |||
| 3fe77852e6 | |||
| 5bc70bb1f9 | |||
| 268214ffc7 | |||
| 3a8590fc1a | |||
| d7ea081ee3 | |||
|
ecc04cec5c
|
|||
| 5f169d2cc1 | |||
| 84d5c9740f | |||
| 7aec0a3941 | |||
|
bbfe0149c3
|
|||
|
1c3d517ce5
|
|||
| 5b1d472097 | |||
| 75d6aa6ed3 | |||
| bd755cf82e | |||
|
2f4470eabc
|
|||
| d5198c8a12 | |||
| afd6234702 | |||
| ab92895405 | |||
| 7e7acac761 | |||
| a3e52a3bc6 | |||
| 6fe9aa5329 | |||
|
46f14872c8
|
|||
|
707f5f6f5f
|
|||
|
e61ae12cc8
|
|||
|
0b969ac990
|
|||
| 0032332f08 | |||
| affdee7408 | |||
| 6e1a773ae8 | |||
| 614cbc4891 | |||
| c7934633be | |||
| 9e5058fa72 | |||
| 7a9b962e07 | |||
| e3e993e26c | |||
| 40bcda7365 | |||
| 07b3870e3d | |||
|
cbc3fdc5e6
|
|||
| dab188b470 | |||
| d6760355ea | |||
| d7a11051fa | |||
| 527925369f | |||
| 59b3677186 | |||
| 5181fb561b | |||
| b57512dc46 | |||
| 33e6c2899d | |||
| c17c400828 | |||
| 4096068e31 | |||
| 376f939a00 | |||
| 0c746fb9e0 | |||
| 2c7f0f8902 | |||
| 14f2cdd344 | |||
| c01050c4d3 | |||
| e18e272a06 | |||
| 6318e88130 | |||
| 2e7afa0e6b | |||
| da66f76b13 | |||
| 500b2dc3c4 | |||
| 007b45e54c | |||
| 551999a822 | |||
| 4b9322bacd | |||
| 6f58c0bf5c | |||
| 6e77aa44c6 | |||
| b7218fb685 | |||
| c52a5d7a65 | |||
| 0f97ace20b | |||
| b8c0dd63b7 | |||
| 8d5c891dc5 | |||
| 6ace662b32 | |||
| 746d02321a | |||
| cab0728d5b | |||
| b62496d023 | |||
| 9945b3329f | |||
| 47a25f15af | |||
| 3765f00fff | |||
| e53c625e08 |
@@ -1,78 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleAllowMixedLocalizations</key>
|
||||
<true/>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>applet</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>applet</string>
|
||||
<key>CFBundleIconName</key>
|
||||
<string>applet</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.apple.ScriptEditor.id.Copy-Firefox-Link--Jira</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>Copy Firefox Link (Jira)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>aplt</string>
|
||||
<key>LSMinimumSystemVersionByArchitecture</key>
|
||||
<dict>
|
||||
<key>x86_64</key>
|
||||
<string>10.6</string>
|
||||
</dict>
|
||||
<key>LSRequiresCarbon</key>
|
||||
<true/>
|
||||
<key>NSAppleEventsUsageDescription</key>
|
||||
<string>This script needs to control other applications to run.</string>
|
||||
<key>NSAppleMusicUsageDescription</key>
|
||||
<string>This script needs access to your music to run.</string>
|
||||
<key>NSCalendarsUsageDescription</key>
|
||||
<string>This script needs access to your calendars to run.</string>
|
||||
<key>NSCameraUsageDescription</key>
|
||||
<string>This script needs access to your camera to run.</string>
|
||||
<key>NSContactsUsageDescription</key>
|
||||
<string>This script needs access to your contacts to run.</string>
|
||||
<key>NSHomeKitUsageDescription</key>
|
||||
<string>This script needs access to your HomeKit Home to run.</string>
|
||||
<key>NSMicrophoneUsageDescription</key>
|
||||
<string>This script needs access to your microphone to run.</string>
|
||||
<key>NSPhotoLibraryUsageDescription</key>
|
||||
<string>This script needs access to your photos to run.</string>
|
||||
<key>NSRemindersUsageDescription</key>
|
||||
<string>This script needs access to your reminders to run.</string>
|
||||
<key>NSSiriUsageDescription</key>
|
||||
<string>This script needs access to Siri to run.</string>
|
||||
<key>NSSystemAdministrationUsageDescription</key>
|
||||
<string>This script needs access to administer this system to run.</string>
|
||||
<key>OSAAppletShowStartupScreen</key>
|
||||
<false/>
|
||||
<key>WindowState</key>
|
||||
<dict>
|
||||
<key>bundleDividerCollapsed</key>
|
||||
<true/>
|
||||
<key>bundlePositionOfDivider</key>
|
||||
<real>0.0</real>
|
||||
<key>dividerCollapsed</key>
|
||||
<false/>
|
||||
<key>eventLogLevel</key>
|
||||
<integer>2</integer>
|
||||
<key>name</key>
|
||||
<string>ScriptWindowState</string>
|
||||
<key>positionOfDivider</key>
|
||||
<real>394</real>
|
||||
<key>savedFrame</key>
|
||||
<string>952 453 700 682 0 0 2560 1409 </string>
|
||||
<key>selectedTab</key>
|
||||
<string>result</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
APPLaplt
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 362 B |
@@ -1,5 +0,0 @@
|
||||
{\rtf1\ansi\ansicpg1252\cocoartf2865
|
||||
\cocoatextscaling0\cocoaplatform0{\fonttbl}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
{\*\expandedcolortbl;;}
|
||||
}
|
||||
@@ -1,192 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>files</key>
|
||||
<dict>
|
||||
<key>Resources/Assets.car</key>
|
||||
<data>
|
||||
OdbufcoyP2ZXC+wmwYcwMi/2x24=
|
||||
</data>
|
||||
<key>Resources/Scripts/main.scpt</key>
|
||||
<data>
|
||||
c++jyUmQRxdpGX36L8PJaNpf6uM=
|
||||
</data>
|
||||
<key>Resources/applet.icns</key>
|
||||
<data>
|
||||
sINd6lbiqHD5dL8c6u79cFvVXhw=
|
||||
</data>
|
||||
<key>Resources/applet.rsrc</key>
|
||||
<data>
|
||||
DlWDU4NYiJFhmwpseexPiRYHzFI=
|
||||
</data>
|
||||
<key>Resources/description.rtfd/TXT.rtf</key>
|
||||
<data>
|
||||
C1nXIy6FYUr4wNNlSEP/8NzzT/E=
|
||||
</data>
|
||||
</dict>
|
||||
<key>files2</key>
|
||||
<dict>
|
||||
<key>Resources/Assets.car</key>
|
||||
<dict>
|
||||
<key>hash</key>
|
||||
<data>
|
||||
OdbufcoyP2ZXC+wmwYcwMi/2x24=
|
||||
</data>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
cVUhSsEaVhMGFs9io544X4XEevDHVtRiVGUTdZ4ZHX4=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/Scripts/main.scpt</key>
|
||||
<dict>
|
||||
<key>hash</key>
|
||||
<data>
|
||||
c++jyUmQRxdpGX36L8PJaNpf6uM=
|
||||
</data>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
o+Lp+bYlQlPNZa8JmZ6wdvY55TCtjUxce100Dttj5vY=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/applet.icns</key>
|
||||
<dict>
|
||||
<key>hash</key>
|
||||
<data>
|
||||
sINd6lbiqHD5dL8c6u79cFvVXhw=
|
||||
</data>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
J7weZ6vlnv9r32tS5HFcyuPXl2StdDnfepLxAixlryk=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/applet.rsrc</key>
|
||||
<dict>
|
||||
<key>hash</key>
|
||||
<data>
|
||||
DlWDU4NYiJFhmwpseexPiRYHzFI=
|
||||
</data>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
/UdIZRcpe3tND6vnHQP/IG8Vvt3+ZFQS5SQ+h1kescY=
|
||||
</data>
|
||||
</dict>
|
||||
<key>Resources/description.rtfd/TXT.rtf</key>
|
||||
<dict>
|
||||
<key>hash</key>
|
||||
<data>
|
||||
C1nXIy6FYUr4wNNlSEP/8NzzT/E=
|
||||
</data>
|
||||
<key>hash2</key>
|
||||
<data>
|
||||
Y3Q9y0mIEZh55w+oHoEyN1W1UzIxrILMub7rktKsd1I=
|
||||
</data>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>rules</key>
|
||||
<dict>
|
||||
<key>^Resources/</key>
|
||||
<true/>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^version.plist$</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>rules2</key>
|
||||
<dict>
|
||||
<key>.*\.dSYM($|/)</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>11</real>
|
||||
</dict>
|
||||
<key>^(.*/)?\.DS_Store$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>2000</real>
|
||||
</dict>
|
||||
<key>^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^.*</key>
|
||||
<true/>
|
||||
<key>^Info\.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^PkgInfo$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/</key>
|
||||
<dict>
|
||||
<key>optional</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1000</real>
|
||||
</dict>
|
||||
<key>^Resources/.*\.lproj/locversion.plist$</key>
|
||||
<dict>
|
||||
<key>omit</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>1100</real>
|
||||
</dict>
|
||||
<key>^Resources/Base\.lproj/</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>1010</real>
|
||||
</dict>
|
||||
<key>^[^/]+$</key>
|
||||
<dict>
|
||||
<key>nested</key>
|
||||
<true/>
|
||||
<key>weight</key>
|
||||
<real>10</real>
|
||||
</dict>
|
||||
<key>^embedded\.provisionprofile$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
<key>^version\.plist$</key>
|
||||
<dict>
|
||||
<key>weight</key>
|
||||
<real>20</real>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,11 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
DIR=$(dirname "$0")
|
||||
|
||||
for app in "$DIR"/*.app; do
|
||||
echo "Installing $(basename "$app")..."
|
||||
cp -rv "$app" "$HOME"/Applications/
|
||||
xattr -dr com.apple.quarantine "/Applications/$(basename "$app")"
|
||||
done
|
||||
|
||||
open "x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility"
|
||||
@@ -1,28 +0,0 @@
|
||||
bash
|
||||
coreutils
|
||||
dockutil
|
||||
duti
|
||||
fastfetch
|
||||
ffmpeg
|
||||
git
|
||||
gnu-sed
|
||||
htop
|
||||
imagemagick
|
||||
ipcalc
|
||||
iperf3
|
||||
mtr
|
||||
neovim
|
||||
parallel
|
||||
pinentry-mac
|
||||
ranger
|
||||
ripgrep
|
||||
rsync
|
||||
taplo
|
||||
telnet
|
||||
texinfo
|
||||
tmux
|
||||
tree
|
||||
watch
|
||||
wget
|
||||
zoxide
|
||||
zsh
|
||||
@@ -1,31 +0,0 @@
|
||||
alacritty
|
||||
chatterino
|
||||
dbeaver-community
|
||||
discord
|
||||
displaylink
|
||||
docker
|
||||
firefox
|
||||
font-hack-nerd-font
|
||||
gimp
|
||||
karabiner-elements
|
||||
keepassxc
|
||||
megasync
|
||||
microsoft-teams
|
||||
mongodb-compass
|
||||
mpv
|
||||
obsidian
|
||||
platypus
|
||||
postman
|
||||
qbittorrent
|
||||
rustdesk
|
||||
scroll-reverser
|
||||
signal
|
||||
spotify
|
||||
telegram
|
||||
the-unarchiver
|
||||
transfer
|
||||
twingate
|
||||
visual-studio-code
|
||||
vlc
|
||||
winbox
|
||||
wireshark
|
||||
@@ -1,2 +0,0 @@
|
||||
example
|
||||
displaylink
|
||||
File diff suppressed because one or more lines are too long
@@ -1,110 +0,0 @@
|
||||
# use_thin_strokes = true
|
||||
[env]
|
||||
TERM = "xterm-256color"
|
||||
|
||||
[general]
|
||||
import = ["~/.config/alacritty/dracula.toml"]
|
||||
|
||||
[keyboard]
|
||||
bindings = [
|
||||
{ key = "F", mods = "Control", action = "SearchForward" },
|
||||
{ key = "Left", mods = "Alt", chars = "\u001BB" },
|
||||
{ key = "Return", mods = "Control|Shift", action = "SpawnNewInstance" },
|
||||
{ key = "Right", mods = "Alt", chars = "\u001BF" },
|
||||
{ key = "Space", mods = "Control", chars = "\u0000" },
|
||||
{ key = "V", mods = "Control|Shift", action = "Paste" },
|
||||
]
|
||||
|
||||
[window]
|
||||
opacity = 0.95
|
||||
|
||||
[font]
|
||||
size = 20
|
||||
|
||||
# [font.normal]
|
||||
# family = "Terminess Nerd Font"
|
||||
# style = "Regular"
|
||||
|
||||
# # [font.bold]
|
||||
# # family = "Teminess Nerd Font"
|
||||
# # style = "Bold"
|
||||
|
||||
# [font.bold_italic]
|
||||
# family = "Terminess Nerd Font"
|
||||
# style = "Bold Italic"
|
||||
|
||||
# [font.italic]
|
||||
# family = "Terminess Nerd Font"
|
||||
# style = "Italic"
|
||||
|
||||
|
||||
# Comic code
|
||||
[font.normal]
|
||||
family = "Comic Code Ligatures"
|
||||
style = "Regular"
|
||||
|
||||
# [font.bold]
|
||||
# family = "Teminess Nerd Font"
|
||||
# style = "Bold"
|
||||
|
||||
[font.bold_italic]
|
||||
family = "Comic Code"
|
||||
style = "Bold Italic"
|
||||
|
||||
[font.italic]
|
||||
family = "Comic Code"
|
||||
style = "Italic"
|
||||
|
||||
[font.offset]
|
||||
x = 0
|
||||
y = -6
|
||||
|
||||
[font.glyph_offset]
|
||||
x = 0
|
||||
y = -2
|
||||
|
||||
# [mouse.hints]
|
||||
# modifiers = "Command"
|
||||
|
||||
# [mouse.hints.launcher]
|
||||
# program = "open"
|
||||
|
||||
[selection]
|
||||
save_to_clipboard = true
|
||||
|
||||
# Unused
|
||||
[colors.bright]
|
||||
black = "0x7f7f7f"
|
||||
blue = "0x5c5cff"
|
||||
cyan = "0x00ffff"
|
||||
green = "0x00ff00"
|
||||
magenta = "0xff00ff"
|
||||
red = "0xff0000"
|
||||
white = "0xffffff"
|
||||
yellow = "0xffff00"
|
||||
|
||||
[colors.normal]
|
||||
black = "0x000000"
|
||||
blue = "0x0000ee"
|
||||
cyan = "0x00cdcd"
|
||||
green = "0x00cd00"
|
||||
magenta = "0xcd00cd"
|
||||
red = "0xcd0000"
|
||||
white = "0xe5e5e5"
|
||||
yellow = "0xcdcd00"
|
||||
|
||||
[colors.primary]
|
||||
background = "0x000000"
|
||||
foreground = "0xffffff"
|
||||
|
||||
[colors.search.focused_match]
|
||||
background = "#ab4642"
|
||||
foreground = "#181818"
|
||||
|
||||
# [colors.search.footer_bar]
|
||||
# background = "#262626"
|
||||
# foreground = "#d0d0d0"
|
||||
|
||||
[colors.search.matches]
|
||||
background = "#f4bf75"
|
||||
foreground = "#181818"
|
||||
@@ -1,76 +0,0 @@
|
||||
# Dracula theme for Alacritty
|
||||
# https://draculatheme.com/alacritty
|
||||
#
|
||||
# Color palette
|
||||
# https://spec.draculatheme.com
|
||||
#
|
||||
# Instructions
|
||||
# https://github.com/alacritty/alacritty/blob/master/extra/man/alacritty.5.scd
|
||||
|
||||
[colors.primary]
|
||||
|
||||
background = "#282a36"
|
||||
foreground = "#f8f8f2"
|
||||
bright_foreground = "#ffffff"
|
||||
|
||||
[colors.cursor]
|
||||
|
||||
text = "#282a36"
|
||||
cursor = "#f8f8f2"
|
||||
|
||||
[colors.vi_mode_cursor]
|
||||
|
||||
text = "CellBackground"
|
||||
cursor = "CellForeground"
|
||||
|
||||
[colors.selection]
|
||||
|
||||
text = "CellForeground"
|
||||
background = "#44475a"
|
||||
|
||||
[colors.normal]
|
||||
|
||||
black = "#21222c"
|
||||
red = "#ff5555"
|
||||
green = "#50fa7b"
|
||||
yellow = "#f1fa8c"
|
||||
blue = "#bd93f9"
|
||||
magenta = "#ff79c6"
|
||||
cyan = "#8be9fd"
|
||||
white = "#f8f8f2"
|
||||
|
||||
[colors.bright]
|
||||
|
||||
black = "#6272a4"
|
||||
red = "#ff6e6e"
|
||||
green = "#69ff94"
|
||||
yellow = "#ffffa5"
|
||||
blue = "#d6acff"
|
||||
magenta = "#ff92df"
|
||||
cyan = "#a4ffff"
|
||||
white = "#ffffff"
|
||||
|
||||
[colors.search.matches]
|
||||
|
||||
foreground = "#44475a"
|
||||
background = "#50fa7b"
|
||||
|
||||
[colors.search.focused_match]
|
||||
|
||||
foreground = "#44475a"
|
||||
background = "#ffb86c"
|
||||
|
||||
[colors.footer_bar]
|
||||
|
||||
background = "#282a36"
|
||||
foreground = "#f8f8f2"
|
||||
|
||||
[colors.hints.start]
|
||||
|
||||
foreground = "#282a36"
|
||||
background = "#f1fa8c"
|
||||
|
||||
[colors.hints.end]
|
||||
|
||||
foreground = "#f1fa8c"
|
||||
background = "#282a36"
|
||||
@@ -1,38 +0,0 @@
|
||||
# CONFIGURATION:
|
||||
# Default configuration to DROP
|
||||
iptables -P INPUT DROP
|
||||
iptables -P FORWARD DROP
|
||||
iptables -P OUTPUT DROP
|
||||
|
||||
# Accept on localhost
|
||||
# iptables -A INPUT -i lo -j ACCEPT
|
||||
# iptables -A OUTPUT -o lo -j ACCEPT
|
||||
|
||||
# Accept outgoing network
|
||||
iptables -A OUTPUT -o eth0 -j ACCEPT
|
||||
|
||||
# Enable SSH (to that machine)
|
||||
iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --sport 22 -j ACCEPT
|
||||
iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 22 -j ACCEPT
|
||||
|
||||
# Enable INZ
|
||||
#iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 1285 -j ACCEPT
|
||||
#iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 3000 -j ACCEPT
|
||||
#iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 8080 -j ACCEPT
|
||||
|
||||
#Enable CSGO
|
||||
iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 27015 -j ACCEPT
|
||||
iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 27020 -j ACCEPT
|
||||
#iptables -A INPUT -p udp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 27015 -j ACCEPT
|
||||
#iptables -A INPUT -p udp -m state --state NEW -m tcp -s 192.168.0.0/24 --dport 27020 -j ACCEPT
|
||||
|
||||
# Allow established sessions to receive traffic
|
||||
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
|
||||
# iptables -A INPUT -m state --state NEW,ESTABLISHED -j ACCEPT
|
||||
|
||||
iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP
|
||||
iptables -A FORWARD -i eth0 -m state --state NEW,INVALID -j DROP
|
||||
# END OF CONFIG
|
||||
|
||||
# END CONFIGURATION:
|
||||
# END OF CONFIGURATION
|
||||
@@ -1 +0,0 @@
|
||||
{"title":"Mouse keys ambidextrous - yorune","rules":[{"description":"Mouse keys Ambidextrous","manipulators":[{"from":{"key_code":"k","modifiers":{"mandatory":["fn"],"optional":["any"]}},"to":[{"mouse_key":{"vertical_wheel":-64}}],"type":"basic"},{"from":{"key_code":"j","modifiers":{"mandatory":["fn"],"optional":["any"]}},"to":[{"mouse_key":{"vertical_wheel":64}}],"type":"basic"},{"from":{"key_code":"h","modifiers":{"mandatory":["fn"],"optional":["any"]}},"to":[{"mouse_key":{"horizontal_wheel":64}}],"type":"basic"},{"from":{"key_code":"l","modifiers":{"mandatory":["fn"],"optional":["any"]}},"to":[{"mouse_key":{"horizontal_wheel":-64}}],"type":"basic"},{"from":{"key_code":"u","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"pointing_button":"button1"}],"type":"basic"},{"from":{"key_code":"o","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"pointing_button":"button2"}],"type":"basic"},{"from":{"key_code":"h","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"mouse_key":{"x":-1018}}],"type":"basic"},{"from":{"key_code":"j","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"mouse_key":{"y":1018}}],"type":"basic"},{"from":{"key_code":"k","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"mouse_key":{"y":-1018}}],"type":"basic"},{"from":{"key_code":"l","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"mouse_key":{"x":1018}}],"type":"basic"},{"from":{"key_code":"q","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"pointing_button":"button1"}],"type":"basic"},{"from":{"key_code":"e","modifiers":{"mandatory":["left_control","left_shift"],"optional":["any"]}},"to":[{"pointing_button":"button2"}],"type":"basic"}]}]}
|
||||
@@ -1,449 +0,0 @@
|
||||
{
|
||||
"global": { "show_in_menu_bar": false },
|
||||
"profiles": [
|
||||
{
|
||||
"complex_modifications": {
|
||||
"rules": [
|
||||
{
|
||||
"description": "Maps F5 to ⌘⇧M in MS Teams or ⌘⇧A to ZOOM. F5 has an MIC symbol on recent MacOS keyboards.",
|
||||
"manipulators": [
|
||||
{
|
||||
"from": { "key_code": "f5" },
|
||||
"to": [{ "shell_command": "if [ $(ps aux | grep -v grep | grep -ci \"Microsoft Teams.app/Contents/Frameworks/Microsoft Teams Helper.app\") -gt 0 ]; then osascript -e 'activate application id \"com.microsoft.teams\"' -e 'tell application \"System Events\" to keystroke \"m\" using {command down, shift down}'; fi & if [ $(ps aux | grep -v grep | grep -ci \"zoom.us.app/Contents/Frameworks/cpthost.app/Contents/MacOS/CptHost\") -gt 0 ]; then osascript -e 'activate application id \"us.zoom.xos\"' -e 'tell application \"System Events\" to keystroke \"a\" using {command down, shift down}'; fi" }],
|
||||
"type": "basic"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Change right_command+hjkl to arrow keys",
|
||||
"manipulators": [
|
||||
{
|
||||
"from": {
|
||||
"key_code": "h",
|
||||
"modifiers": {
|
||||
"mandatory": ["right_command"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [{ "key_code": "left_arrow" }],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "j",
|
||||
"modifiers": {
|
||||
"mandatory": ["right_command"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [{ "key_code": "down_arrow" }],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "k",
|
||||
"modifiers": {
|
||||
"mandatory": ["right_command"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [{ "key_code": "up_arrow" }],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "l",
|
||||
"modifiers": {
|
||||
"mandatory": ["right_command"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [{ "key_code": "right_arrow" }],
|
||||
"type": "basic"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"devices": [
|
||||
{
|
||||
"fn_function_keys": [
|
||||
{
|
||||
"from": { "key_code": "f1" },
|
||||
"to": [{ "consumer_key_code": "mute" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f2" },
|
||||
"to": [{ "consumer_key_code": "volume_decrement" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f3" },
|
||||
"to": [{ "consumer_key_code": "volume_increment" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f10" },
|
||||
"to": [{ "consumer_key_code": "play_or_pause" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f11" },
|
||||
"to": [{ "consumer_key_code": "display_brightness_decrement" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f12" },
|
||||
"to": [{ "consumer_key_code": "display_brightness_increment" }]
|
||||
}
|
||||
],
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 591,
|
||||
"vendor_id": 1452
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "caps_lock" },
|
||||
"to": [{ "key_code": "escape" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "down_arrow" },
|
||||
"to": [{ "pointing_button": "button32" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "escape" },
|
||||
"to": [{ "key_code": "grave_accent_and_tilde" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_arrow" },
|
||||
"to": [{ "pointing_button": "button32" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_command" },
|
||||
"to": [{ "key_code": "left_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_arrow" },
|
||||
"to": [{ "pointing_button": "button32" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "up_arrow" },
|
||||
"to": [{ "pointing_button": "button32" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 631,
|
||||
"vendor_id": 1452
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "non_us_backslash" },
|
||||
"to": [{ "key_code": "grave_accent_and_tilde" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 6194,
|
||||
"vendor_id": 4152
|
||||
},
|
||||
"ignore": true,
|
||||
"manipulate_caps_lock_led": false
|
||||
},
|
||||
{
|
||||
"fn_function_keys": [
|
||||
{
|
||||
"from": { "key_code": "f1" },
|
||||
"to": [{ "key_code": "f1" }]
|
||||
}
|
||||
],
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 615,
|
||||
"vendor_id": 76
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_pointing_device": true,
|
||||
"product_id": 6194,
|
||||
"vendor_id": 4152
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "pointing_button": "button5" },
|
||||
"to": [{ "apple_vendor_keyboard_key_code": "launchpad" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 30264,
|
||||
"vendor_id": 3141
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "escape" },
|
||||
"to": [{ "key_code": "grave_accent_and_tilde" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_command" },
|
||||
"to": [{ "key_code": "left_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": { "is_keyboard": true },
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 34056,
|
||||
"vendor_id": 3141
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "left_command" },
|
||||
"to": [{ "key_code": "left_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "left_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 615,
|
||||
"vendor_id": 1452
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "consumer_key_code": "eject" },
|
||||
"to": [{ "consumer_key_code": "al_terminal_lock_or_screensaver" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 668,
|
||||
"vendor_id": 76
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"fn_function_keys": [
|
||||
{
|
||||
"from": { "key_code": "f1" },
|
||||
"to": [{ "key_code": "f1" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f2" },
|
||||
"to": [{ "key_code": "f2" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f3" },
|
||||
"to": [{ "key_code": "f3" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f4" },
|
||||
"to": [{ "key_code": "f4" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f5" },
|
||||
"to": [{ "key_code": "f5" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f6" },
|
||||
"to": [{ "key_code": "f13" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f7" },
|
||||
"to": [{ "key_code": "f7" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f8" },
|
||||
"to": [{ "key_code": "f8" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f9" },
|
||||
"to": [{ "key_code": "f9" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f10" },
|
||||
"to": [{ "consumer_key_code": "play_or_pause" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f11" },
|
||||
"to": [{ "consumer_key_code": "mute" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f12" },
|
||||
"to": [{ "consumer_key_code": "volume_increment" }]
|
||||
}
|
||||
],
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 45929,
|
||||
"vendor_id": 1133
|
||||
},
|
||||
"manipulate_caps_lock_led": false,
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_option" },
|
||||
"to": [{ "key_code": "right_command" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"fn_function_keys": [
|
||||
{
|
||||
"from": { "key_code": "f1" },
|
||||
"to": [{ "key_code": "f1" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f2" },
|
||||
"to": [{ "key_code": "f2" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f11" },
|
||||
"to": [{ "key_code": "f11" }]
|
||||
}
|
||||
],
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 785,
|
||||
"vendor_id": 13364
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "grave_accent_and_tilde" },
|
||||
"to": [{ "key_code": "non_us_backslash" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "right_control" },
|
||||
"to": [{ "key_code": "grave_accent_and_tilde" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 666,
|
||||
"vendor_id": 76
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 666,
|
||||
"vendor_id": 1452
|
||||
},
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "key_code": "right_command" },
|
||||
"to": [{ "key_code": "right_option" }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"identifiers": {
|
||||
"is_keyboard": true,
|
||||
"product_id": 34304,
|
||||
"vendor_id": 1452
|
||||
},
|
||||
"ignore": true
|
||||
}
|
||||
],
|
||||
"fn_function_keys": [
|
||||
{
|
||||
"from": { "key_code": "f4" },
|
||||
"to": [{ "apple_vendor_keyboard_key_code": "mission_control" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "f5" },
|
||||
"to": [{ "key_code": "f5" }]
|
||||
}
|
||||
],
|
||||
"name": "Default profile",
|
||||
"selected": true,
|
||||
"simple_modifications": [
|
||||
{
|
||||
"from": { "consumer_key_code": "eject" },
|
||||
"to": [{ "consumer_key_code": "al_terminal_lock_or_screensaver" }]
|
||||
},
|
||||
{
|
||||
"from": { "key_code": "caps_lock" },
|
||||
"to": [{ "key_code": "escape" }]
|
||||
}
|
||||
],
|
||||
"virtual_hid_keyboard": {
|
||||
"country_code": 0,
|
||||
"keyboard_type_v2": "iso"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,206 +0,0 @@
|
||||
{
|
||||
"title": "Mouse keys ambidextrous - yorune",
|
||||
"rules": [
|
||||
{
|
||||
"description": "Mouse keys Ambidextrous",
|
||||
"manipulators": [
|
||||
{
|
||||
"from": {
|
||||
"key_code": "k",
|
||||
"modifiers": {
|
||||
"mandatory": ["fn"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"vertical_wheel": -64
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "j",
|
||||
"modifiers": {
|
||||
"mandatory": ["fn"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"vertical_wheel": 64
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "h",
|
||||
"modifiers": {
|
||||
"mandatory": ["fn"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"horizontal_wheel": 64
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "l",
|
||||
"modifiers": {
|
||||
"mandatory": ["fn"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"horizontal_wheel": -64
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "u",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"pointing_button": "button1"
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "o",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"pointing_button": "button2"
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "h",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"x": -1018
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "j",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"y": 1018
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "k",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"y": -1018
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "l",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"mouse_key": {
|
||||
"x": 1018
|
||||
}
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "q",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"pointing_button": "button1"
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
},
|
||||
{
|
||||
"from": {
|
||||
"key_code": "e",
|
||||
"modifiers": {
|
||||
"mandatory": ["left_control", "left_shift"],
|
||||
"optional": ["any"]
|
||||
}
|
||||
},
|
||||
"to": [
|
||||
{
|
||||
"pointing_button": "button2"
|
||||
}
|
||||
],
|
||||
"type": "basic"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,417 +0,0 @@
|
||||
{
|
||||
"name": "Keychron V1",
|
||||
"vendorProductId": 875823889,
|
||||
"macros": [
|
||||
"",
|
||||
"{KC_LGUI,KC_LCTL,KC_Q}",
|
||||
"{KC_RGUI,KC_L}",
|
||||
"Have a nice day",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
"it-infra-stream@wundermanthompson.com",
|
||||
"marcin.wozniak@wundermanthompson.com",
|
||||
"Have a nice day!\n\n---\nMarcin\n"
|
||||
],
|
||||
"layers": [
|
||||
[
|
||||
"KC_GRV",
|
||||
"KC_F1",
|
||||
"KC_F2",
|
||||
"KC_F3",
|
||||
"KC_F4",
|
||||
"KC_F5",
|
||||
"KC_F6",
|
||||
"KC_F7",
|
||||
"KC_F8",
|
||||
"KC_F9",
|
||||
"KC_F10",
|
||||
"KC_F11",
|
||||
"KC_F12",
|
||||
"KC_DEL",
|
||||
"KC_NO",
|
||||
"KC_MUTE",
|
||||
"KC_GRV",
|
||||
"KC_1",
|
||||
"KC_2",
|
||||
"KC_3",
|
||||
"KC_4",
|
||||
"KC_5",
|
||||
"KC_6",
|
||||
"KC_7",
|
||||
"KC_8",
|
||||
"KC_9",
|
||||
"KC_0",
|
||||
"KC_MINS",
|
||||
"KC_EQL",
|
||||
"KC_BSPC",
|
||||
"KC_NO",
|
||||
"KC_PGUP",
|
||||
"KC_TAB",
|
||||
"KC_Q",
|
||||
"KC_W",
|
||||
"KC_E",
|
||||
"KC_R",
|
||||
"KC_T",
|
||||
"KC_Y",
|
||||
"KC_U",
|
||||
"KC_I",
|
||||
"KC_O",
|
||||
"KC_P",
|
||||
"KC_LBRC",
|
||||
"KC_RBRC",
|
||||
"KC_BSLS",
|
||||
"KC_NO",
|
||||
"KC_PGDN",
|
||||
"KC_ESC",
|
||||
"KC_A",
|
||||
"KC_S",
|
||||
"KC_D",
|
||||
"KC_F",
|
||||
"KC_G",
|
||||
"KC_H",
|
||||
"KC_J",
|
||||
"KC_K",
|
||||
"KC_L",
|
||||
"KC_SCLN",
|
||||
"KC_QUOT",
|
||||
"KC_NO",
|
||||
"KC_ENT",
|
||||
"KC_NO",
|
||||
"KC_HOME",
|
||||
"KC_LSFT",
|
||||
"KC_NO",
|
||||
"KC_Z",
|
||||
"KC_X",
|
||||
"KC_C",
|
||||
"KC_V",
|
||||
"KC_B",
|
||||
"KC_N",
|
||||
"KC_M",
|
||||
"KC_COMM",
|
||||
"KC_DOT",
|
||||
"KC_SLSH",
|
||||
"KC_NO",
|
||||
"KC_RSFT",
|
||||
"KC_UP",
|
||||
"KC_NO",
|
||||
"KC_LCTL",
|
||||
"USER02",
|
||||
"USER05",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_SPC",
|
||||
"KC_VOLD",
|
||||
"KC_VOLU",
|
||||
"KC_NO",
|
||||
"USER03",
|
||||
"MO(1)",
|
||||
"USER05",
|
||||
"KC_LEFT",
|
||||
"KC_DOWN",
|
||||
"KC_RGHT"
|
||||
],
|
||||
[
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"BL_DEC",
|
||||
"BL_INC",
|
||||
"KC_MPRV",
|
||||
"KC_MPLY",
|
||||
"KC_MNXT",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_PSCR",
|
||||
"KC_NO",
|
||||
"RGB_TOG",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"MACRO01",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"MACRO13",
|
||||
"MACRO14",
|
||||
"MACRO15",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_MS_BTN1",
|
||||
"KC_MS_UP",
|
||||
"KC_MS_BTN2",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_MS_LEFT",
|
||||
"KC_MS_DOWN",
|
||||
"KC_MS_RIGHT",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_END",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_MS_WH_UP",
|
||||
"KC_MS_WH_DOWN",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"RGB_VAD",
|
||||
"RGB_VAI",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS"
|
||||
],
|
||||
[
|
||||
"KC_GRV",
|
||||
"KC_F1",
|
||||
"KC_F2",
|
||||
"KC_F3",
|
||||
"KC_F4",
|
||||
"KC_F5",
|
||||
"KC_F6",
|
||||
"KC_F7",
|
||||
"KC_F8",
|
||||
"KC_F9",
|
||||
"KC_F10",
|
||||
"KC_F11",
|
||||
"KC_F12",
|
||||
"KC_DEL",
|
||||
"KC_NO",
|
||||
"KC_MUTE",
|
||||
"KC_GRV",
|
||||
"KC_1",
|
||||
"KC_2",
|
||||
"KC_3",
|
||||
"KC_4",
|
||||
"KC_5",
|
||||
"KC_6",
|
||||
"KC_7",
|
||||
"KC_8",
|
||||
"KC_9",
|
||||
"KC_0",
|
||||
"KC_MINS",
|
||||
"KC_EQL",
|
||||
"KC_BSPC",
|
||||
"KC_NO",
|
||||
"KC_PGUP",
|
||||
"KC_TAB",
|
||||
"KC_Q",
|
||||
"KC_W",
|
||||
"KC_E",
|
||||
"KC_R",
|
||||
"KC_T",
|
||||
"KC_Y",
|
||||
"KC_U",
|
||||
"KC_I",
|
||||
"KC_O",
|
||||
"KC_P",
|
||||
"KC_LBRC",
|
||||
"KC_RBRC",
|
||||
"KC_BSLS",
|
||||
"KC_NO",
|
||||
"KC_PGDN",
|
||||
"KC_ESC",
|
||||
"KC_A",
|
||||
"KC_S",
|
||||
"KC_D",
|
||||
"KC_F",
|
||||
"KC_G",
|
||||
"KC_H",
|
||||
"KC_J",
|
||||
"KC_K",
|
||||
"KC_L",
|
||||
"KC_SCLN",
|
||||
"KC_QUOT",
|
||||
"KC_NO",
|
||||
"KC_ENT",
|
||||
"KC_NO",
|
||||
"KC_HOME",
|
||||
"KC_LSFT",
|
||||
"KC_NO",
|
||||
"KC_Z",
|
||||
"KC_X",
|
||||
"KC_C",
|
||||
"KC_V",
|
||||
"KC_B",
|
||||
"KC_N",
|
||||
"KC_M",
|
||||
"KC_COMM",
|
||||
"KC_DOT",
|
||||
"KC_SLSH",
|
||||
"KC_NO",
|
||||
"KC_RSFT",
|
||||
"KC_UP",
|
||||
"KC_NO",
|
||||
"KC_LCTL",
|
||||
"KC_LGUI",
|
||||
"KC_LALT",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_SPC",
|
||||
"KC_VOLD",
|
||||
"KC_VOLU",
|
||||
"KC_NO",
|
||||
"KC_RALT",
|
||||
"MO(3)",
|
||||
"KC_RCTL",
|
||||
"KC_LEFT",
|
||||
"KC_DOWN",
|
||||
"KC_RGHT"
|
||||
],
|
||||
[
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"BL_DEC",
|
||||
"BL_INC",
|
||||
"KC_MPRV",
|
||||
"KC_MPLY",
|
||||
"KC_MNXT",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_PSCR",
|
||||
"KC_NO",
|
||||
"RGB_TOG",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"MACRO02",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"MACRO13",
|
||||
"MACRO14",
|
||||
"MACRO15",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_MS_BTN1",
|
||||
"KC_MS_UP",
|
||||
"KC_MS_BTN2",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_MS_LEFT",
|
||||
"KC_MS_DOWN",
|
||||
"KC_MS_RIGHT",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_END",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_MS_WH_UP",
|
||||
"KC_MS_WH_DOWN",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"RGB_VAD",
|
||||
"RGB_VAI",
|
||||
"KC_NO",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS",
|
||||
"KC_TRNS"
|
||||
]
|
||||
],
|
||||
"encoders": []
|
||||
}
|
||||
@@ -1,248 +0,0 @@
|
||||
{
|
||||
"name": "Keychron V1",
|
||||
"vendorId": "0x3434",
|
||||
"productId": "0x0311",
|
||||
"lighting": {
|
||||
"extends": "qmk_rgblight",
|
||||
"underglowEffects": [
|
||||
["None", 0],
|
||||
["SOLID_COLOR", 1],
|
||||
["BREATHING", 1],
|
||||
["CYCLE_ALL", 1],
|
||||
["CYCLE_LEFT_RIGHT", 1],
|
||||
["CYCLE_UP_DOWN", 1],
|
||||
["RAINBOW_MOVING_CHEVRON", 1],
|
||||
["CYCLE_OUT_IN", 1],
|
||||
["CYCLE_OUT_IN_DUAL", 1],
|
||||
["CYCLE_PINWHEEL", 1],
|
||||
["CYCKE_SPIRAL", 1],
|
||||
["DUAL_BEACON", 1],
|
||||
["RAINBOW_BEACON", 1],
|
||||
["RAINDROPS", 1]
|
||||
]
|
||||
},
|
||||
"matrix": {"rows": 6, "cols": 16},
|
||||
"customKeycodes": [
|
||||
{"name": "Mission Control", "title": "Mission Control in macOS", "shortName": "Mission Control"},
|
||||
{"name": "Launch Pad", "title": "Launch Pad in macOS", "shortName": "Launch Pad"},
|
||||
{"name": "Left Option", "title": "Left Option in macOS", "shortName": "Left Option"},
|
||||
{"name": "Right Option", "title": "Right Option in macOS", "shortName": "Right Option"},
|
||||
{"name": "Left Cmd", "title": "Left Command in macOS", "shortName": "Left Command"},
|
||||
{"name": "Right Cmd", "title": "Right Command in macOS", "shortName": "Right Command"},
|
||||
{"name": "Task View", "title": "Task View in windows", "shortName": "Task View"},
|
||||
{"name": "File Explorer", "title": "File Explorer in windows", "shortName": "File Explorer"}
|
||||
],
|
||||
"layouts": {
|
||||
"keymap": [
|
||||
[
|
||||
{
|
||||
"c": "#777777"
|
||||
},
|
||||
"0,0\nESC",
|
||||
{
|
||||
"x": 0.25,
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"0,1",
|
||||
"0,2",
|
||||
"0,3",
|
||||
"0,4",
|
||||
{
|
||||
"x": 0.25
|
||||
},
|
||||
"0,5",
|
||||
"0,6",
|
||||
"0,7",
|
||||
"0,8",
|
||||
{
|
||||
"x": 0.25
|
||||
},
|
||||
"0,9",
|
||||
"0,10",
|
||||
"0,11",
|
||||
"0,12",
|
||||
{
|
||||
"x": 0.25,
|
||||
"c": "#aaaaaa"
|
||||
},
|
||||
"0,13",
|
||||
{
|
||||
"x": 0.25,
|
||||
"w": 0.75
|
||||
},
|
||||
"0,15",
|
||||
{
|
||||
"h": 0.5
|
||||
},
|
||||
"5,7",
|
||||
{
|
||||
"x": -1,
|
||||
"y": 0.5,
|
||||
"h": 0.5
|
||||
},
|
||||
"5,8"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.25
|
||||
},
|
||||
"1,0",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"1,1",
|
||||
"1,2",
|
||||
"1,3",
|
||||
"1,4",
|
||||
"1,5",
|
||||
"1,6",
|
||||
"1,7",
|
||||
"1,8",
|
||||
"1,9",
|
||||
"1,10",
|
||||
"1,11",
|
||||
"1,12",
|
||||
{
|
||||
"c": "#aaaaaa",
|
||||
"w": 2
|
||||
},
|
||||
"1,13",
|
||||
{
|
||||
"x": 0.25
|
||||
},
|
||||
"1,15"
|
||||
],
|
||||
[
|
||||
{
|
||||
"w": 1.5
|
||||
},
|
||||
"2,0",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"2,1",
|
||||
"2,2",
|
||||
"2,3",
|
||||
"2,4",
|
||||
"2,5",
|
||||
"2,6",
|
||||
"2,7",
|
||||
"2,8",
|
||||
"2,9",
|
||||
"2,10",
|
||||
"2,11",
|
||||
"2,12",
|
||||
{
|
||||
"w": 1.5
|
||||
},
|
||||
"2,13",
|
||||
{
|
||||
"x": 0.25,
|
||||
"c": "#aaaaaa"
|
||||
},
|
||||
"2,15"
|
||||
],
|
||||
[
|
||||
{
|
||||
"w": 1.75
|
||||
},
|
||||
"3,0",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"3,1",
|
||||
"3,2",
|
||||
"3,3",
|
||||
"3,4",
|
||||
"3,5",
|
||||
"3,6",
|
||||
"3,7",
|
||||
"3,8",
|
||||
"3,9",
|
||||
"3,10",
|
||||
"3,11",
|
||||
{
|
||||
"c": "#777777",
|
||||
"w": 2.25
|
||||
},
|
||||
"3,13",
|
||||
{
|
||||
"x": 0.25,
|
||||
"c": "#aaaaaa"
|
||||
},
|
||||
"3,15"
|
||||
],
|
||||
[
|
||||
{
|
||||
"w": 2.25
|
||||
},
|
||||
"4,0",
|
||||
{
|
||||
"c": "#cccccc"
|
||||
},
|
||||
"4,2",
|
||||
"4,3",
|
||||
"4,4",
|
||||
"4,5",
|
||||
"4,6",
|
||||
"4,7",
|
||||
"4,8",
|
||||
"4,9",
|
||||
"4,10",
|
||||
"4,11",
|
||||
{
|
||||
"c": "#aaaaaa",
|
||||
"w": 1.75
|
||||
},
|
||||
"4,13"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 14.25,
|
||||
"c": "#777777"
|
||||
},
|
||||
"4,14"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.25,
|
||||
"c": "#aaaaaa",
|
||||
"w": 1.25
|
||||
},
|
||||
"5,0",
|
||||
{
|
||||
"w": 1.25
|
||||
},
|
||||
"5,1",
|
||||
{
|
||||
"w": 1.25
|
||||
},
|
||||
"5,2",
|
||||
{
|
||||
"c": "#cccccc",
|
||||
"a": 7,
|
||||
"w": 6.25
|
||||
},
|
||||
"5,6",
|
||||
{
|
||||
"c": "#aaaaaa",
|
||||
"a": 4
|
||||
},
|
||||
"5,10",
|
||||
"5,11",
|
||||
"5,12"
|
||||
],
|
||||
[
|
||||
{
|
||||
"y": -0.75,
|
||||
"x": 13.25,
|
||||
"c": "#777777"
|
||||
},
|
||||
"5,13",
|
||||
"5,14",
|
||||
"5,15"
|
||||
]
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
refresher:
|
||||
refreshInterval: 60
|
||||
gui:
|
||||
useHunkModeInStagingView: false
|
||||
mainPanelSplitMode: "horizontal"
|
||||
theme:
|
||||
selectedLineBgColor:
|
||||
- "#413660"
|
||||
git:
|
||||
autoFetch: true
|
||||
paging:
|
||||
colorArg: always
|
||||
commit:
|
||||
signOff: true
|
||||
pull:
|
||||
mode: "rebase"
|
||||
@@ -1,8 +0,0 @@
|
||||
[lutris]
|
||||
library_ignores =
|
||||
migration_version = 10
|
||||
width = 1908
|
||||
height = 1001
|
||||
maximized = False
|
||||
selected_category = runner:linux
|
||||
|
||||
@@ -1,24 +1,11 @@
|
||||
# Restrict readahead and backbuffer to 40MiB from default of 400MiB
|
||||
cache=yes
|
||||
demuxer-max-bytes=2147483647
|
||||
demuxer-max-back-bytes=2147483647
|
||||
|
||||
# Always allow seeking, e.g. allow seeking within a local cache of HTTP stream
|
||||
force-seekable=yes
|
||||
|
||||
# Always open a video window even with no video
|
||||
force-window=yes
|
||||
|
||||
# Don't exit when the end of playlist is reached
|
||||
keep-open=yes
|
||||
|
||||
# Always save the current playback position on exit
|
||||
save-position-on-quit=yes
|
||||
# ontop=yes
|
||||
|
||||
# Geometry settings
|
||||
geometry=50%:50%
|
||||
autofit=50%
|
||||
|
||||
# Create 'high-quality' profile
|
||||
[high-quality]
|
||||
|
||||
+3
-17
@@ -15,26 +15,12 @@ unbind-key p
|
||||
bind-key n next
|
||||
bind-key p prev
|
||||
|
||||
# unbind keys
|
||||
unbind-key j
|
||||
unbind-key k
|
||||
unbind-key J
|
||||
unbind-key K
|
||||
|
||||
# bind keys - vim style
|
||||
bind-key j down
|
||||
bind-key k up
|
||||
bind-key l open
|
||||
bind-key h quit
|
||||
bind-key ESC quit
|
||||
|
||||
highlight all "====.*====" yellow
|
||||
color listnormal default default
|
||||
color listnormal cyan default
|
||||
color listfocus black yellow standout bold
|
||||
color listnormal_unread cyan default
|
||||
color listnormal_unread blue default
|
||||
color listfocus_unread yellow default bold
|
||||
color info red black bold
|
||||
color article white default bold
|
||||
|
||||
browser "$HOME/.local/bin/browser-x -new-tab %u"
|
||||
browser "/home/yorune/.local/bin/browser-x -new-tab %u"
|
||||
player mpv
|
||||
|
||||
+11
-9
@@ -1,19 +1,21 @@
|
||||
=====================NEWS====================================
|
||||
https://wtf.roflcopter.fr/rss-bridge/?action=display&bridge=Facebook&context=User&u=infoKONINpl&media_type=all&limit=-1&format=Mrss "~infoKONIN - Facebook"
|
||||
https://wtf.roflcopter.fr/rss-bridge/?action=display&bridge=Facebook&context=User&u=gminakleczew&media_type=all&limit=-1&format=Mrss "~Gmina Kleczew - Facebook"
|
||||
https://wtf.roflcopter.fr/rss-bridge/?action=display&bridge=Facebook&context=User&u=portalLM&media_type=all&limit=-1&format=Mrss "~Portal lm.pl - Facebook"
|
||||
https://nitter.net/MZ_GOV_PL/rss "~MZ_GOV_PL - Twitter"
|
||||
http://www.epoznan.pl/rss.php "~Epoznan - Website"
|
||||
https://sekurak.pl/feed/ "~Sekurak"
|
||||
https://feeds.feedburner.com/niebezpiecznik/ "~Niebezpiecznik"
|
||||
http://rss.slashdot.org/Slashdot/slashdotMain "SlashDot"
|
||||
=====================SOCIAL=================================
|
||||
https://nitter.net/renerebetm/rss "~Rene Rebe - Twitter"
|
||||
============================================================
|
||||
https://repology.org/maintainer/y0rune%40aol.com/feed-for-repo/gentoo_ovl_guru/atom "~GURU OUTDATE MAINTAINER"
|
||||
https://bugs.gentoo.org/buglist.cgi?bug_status=UNCONFIRMED&chfieldfrom=24h&ctype=atom&title=NEW&list_id=4468306&order=changeddate%20DESC%2Cbug_status%2Cpriority%2Cassigned_to%2Cbug_id&query_format=advanced Gentoo
|
||||
https://bugs.gentoo.org/buglist.cgi?email1=y0rune%40aol.com&emailassigned_to1=1&emailtype1=substring&list_id=5834010&query_format=advanced&resolution=---&title=Bug%20List&ctype=atom "~ASSIGNEE TO ME"
|
||||
https://bugs.gentoo.org/buglist.cgi?component=Package%20issues&product=GURU&query_format=advanced&resolution=---&title=Bug%20List&ctype=atom "~GURU-BUGS"
|
||||
https://bugs.gentoo.org/buglist.cgi?component=Package%20issues&product=GURU&query_format=advanced&resolution=---&title=Bug%20List&ctype=atom GURU-BUGS
|
||||
https://bugs.gentoo.org/buglist.cgi?component=Trusted%20Contributor%20ascension&product=GURU&query_format=advanced&resolution=---&title=Bug%20List&ctype=atom
|
||||
https://www.reddit.com/r/gentoo/new.rss "~Gentoo - Reddit"
|
||||
=====================PODCASTY===============================
|
||||
https://www.internet-czas-dzialac.pl/rss/
|
||||
============================================================
|
||||
http://rss.uptimerobot.com/u674346-753d02ab763f3725330347d4419a7569 "~UpTimeRoboot"
|
||||
=====================YOUTUBE=================================
|
||||
=====================ANIME===================================
|
||||
https://mirror.animetosho.org/feed/rss2?only_tor=1&q=%5BHorribleSubs%5D%20Sword%20Art%20Online%20720p&filter%5B0%5D%5Bt%5D=nyaa_class&filter%5B0%5D%5Bv%5D=trusted "~Sword Art Online"
|
||||
=============================================================
|
||||
=====================YOUTUBE=================================
|
||||
https://www.youtube.com/feeds/videos.xml?channel_id=UCzuvRWjh7k1SZm1RvqvIx4w "~Krzysztof Gonciarz"
|
||||
============================================================
|
||||
|
||||
@@ -1,62 +0,0 @@
|
||||
{
|
||||
"yaml.schemaStore.enable": true,
|
||||
"yaml.format.enable": true,
|
||||
"yaml.validate": true,
|
||||
"yaml.schemas": {
|
||||
"https://json.schemastore.org/ansible-role-2.9.json": "*.yaml",
|
||||
"https://json.schemastore.org/ansible-playbook.json": "*.yaml",
|
||||
"https://json.schemastore.org/ansible-inventory.json": "*yaml",
|
||||
"https://raw.githubusercontent.com/ansible-community/schemas/main/f/ansible-galaxy.json": "*.yaml",
|
||||
"https://raw.githubusercontent.com/docker/cli/master/cli/compose/schema/data/config_schema_v3.9.json": "*docker-compose.yml",
|
||||
"https://json.schemastore.org/github-workflow.json": ".github/workflows/*",
|
||||
|
||||
"https://json.schemastore.org/docker-compose.json": "*.yaml"
|
||||
},
|
||||
"python.formatting.provider": "black",
|
||||
"python.formatting.blackArgs": ["--line-length", "80"],
|
||||
"python.pythonPath": "python3",
|
||||
"diagnostic.refreshOnInsertMode": "true",
|
||||
"coc.preferences.formatOnSaveFiletypes": [
|
||||
"sh",
|
||||
"yaml",
|
||||
"json",
|
||||
"python",
|
||||
"css",
|
||||
"markdown",
|
||||
"ruby",
|
||||
"go"
|
||||
],
|
||||
"diagnostic.virtualText": true,
|
||||
"diagnostic.virtualTextCurrentLineOnly": false,
|
||||
"diagnostic.checkCurrentLine": false,
|
||||
"diagnostic-languageserver.filetypes": {
|
||||
"markdown": ["write-good", "markdownlint"],
|
||||
"sh": "shellcheck"
|
||||
},
|
||||
"languageserver": {
|
||||
"bash": {
|
||||
"command": "bash-language-server",
|
||||
"args": ["start"],
|
||||
"filetypes": ["sh"],
|
||||
"ignoredRootPaths": ["~"]
|
||||
},
|
||||
"ccls": {
|
||||
"command": "ccls",
|
||||
"filetypes": ["c", "cpp", "objc", "objcpp"],
|
||||
"rootPatterns": [
|
||||
".ccls",
|
||||
"compile_commands.json",
|
||||
".vim/",
|
||||
".git/",
|
||||
".hg/"
|
||||
],
|
||||
"trace.server": "verbose",
|
||||
"initializationOptions": {
|
||||
"cache": {
|
||||
"directory": "/tmp/ccls"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"solargraph.formatting": true
|
||||
}
|
||||
+81
-668
@@ -1,45 +1,66 @@
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Download vim-plug
|
||||
""""""""""""""""""""""""""""""""
|
||||
if has('nvim')
|
||||
if ! filereadable(system('echo -n "$HOME/.config/nvim/autoload/plug.vim"'))
|
||||
silent !mkdir -p $HOME/.config/nvim/autoload/
|
||||
silent !curl --silent "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > $HOME/.config/nvim/autoload/plug.vim
|
||||
autocmd VimEnter * PlugInstall
|
||||
endif
|
||||
" settings
|
||||
if ! filereadable(system('echo -n "$HOME/.config/nvim/autoload/plug.vim"'))
|
||||
silent !mkdir -p $HOME/.config/nvim/autoload/
|
||||
silent !curl --silent "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > $HOME/.config/nvim/autoload/plug.vim
|
||||
autocmd VimEnter * PlugInstall
|
||||
endif
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Default settings nvim
|
||||
""""""""""""""""""""""""""""""""
|
||||
let g:python3_host_prog = expand('/opt/homebrew/bin/python3.13')
|
||||
let g:loaded_python_provider = 0
|
||||
let g:python_host_prog = ''
|
||||
set autoindent
|
||||
set expandtab
|
||||
set softtabstop=4
|
||||
set laststatus=2
|
||||
set shiftwidth=4
|
||||
set softtabstop=4
|
||||
set tabstop=4
|
||||
set nocompatible
|
||||
set noshowmode
|
||||
set noerrorbells
|
||||
set wrap
|
||||
set hidden
|
||||
set cmdheight=1
|
||||
set encoding=utf-8
|
||||
set undofile
|
||||
set scrolloff=8
|
||||
set termguicolors
|
||||
set t_BE=
|
||||
set splitbelow splitright
|
||||
au BufWritePre * let &bex = '@' . strftime("%F.%H:%M")
|
||||
filetype plugin indent on
|
||||
""
|
||||
" plugins
|
||||
call plug#begin('~/.config/nvim/plugged')
|
||||
Plug 'preservim/nerdtree'
|
||||
Plug 'nmante/vim-latex-live-preview'
|
||||
Plug 'lervag/vimtex'
|
||||
Plug 'junegunn/goyo.vim'
|
||||
Plug 'iamcco/markdown-preview.nvim', { 'do': 'npm install --force' }
|
||||
Plug 'vim-scripts/bash-support.vim'
|
||||
Plug 'vim-syntastic/syntastic'
|
||||
call plug#end()
|
||||
|
||||
" NerdTree
|
||||
let NERDTreeShowHidden=1
|
||||
|
||||
" Status-line
|
||||
set statusline=
|
||||
set statusline+=%#IncSearch#
|
||||
set statusline+=\ %y
|
||||
set statusline+=\ %r
|
||||
set statusline+=%#CursorLineNr#
|
||||
set statusline+=\ %F
|
||||
set statusline+=%= "Right side settings
|
||||
set statusline+=%#Search#
|
||||
set statusline+=\ %l/%L
|
||||
set statusline+=\ [%c]
|
||||
set statusline+=%#warningmsg#
|
||||
set statusline+=%{SyntasticStatuslineFlag()}
|
||||
set statusline+=%*
|
||||
|
||||
"let g:syntastic_always_populate_loc_list = 1
|
||||
"let g:syntastic_auto_loc_list = 1
|
||||
let g:syntastic_check_on_open = 1
|
||||
let g:syntastic_check_on_wq = 0
|
||||
|
||||
set nocompatible
|
||||
set hlsearch
|
||||
set incsearch
|
||||
set noshowmode
|
||||
set cmdheight=1
|
||||
syntax on
|
||||
filetype plugin indent on
|
||||
set encoding=utf-8
|
||||
|
||||
" Disable by default indent line
|
||||
" let g:indentLine_enabled = 0
|
||||
" livepreviewer
|
||||
let g:livepreview_previewer = 'mupdf'
|
||||
|
||||
" ansible
|
||||
let g:ansible_extra_keywords_highlight = 1
|
||||
" markdown preview
|
||||
let g:mkdp_browser = '/home/yorune/.local/bin/browser-x'
|
||||
let g:mkdp_echo_preview_url = 1
|
||||
|
||||
" line numbers
|
||||
set number
|
||||
@@ -48,14 +69,15 @@ set title
|
||||
|
||||
" indent
|
||||
set backspace=indent,eol,start
|
||||
"set list listchars=nbsp:¬,tab:»·,trail:·,extends:>
|
||||
set list listchars=tab:\│\ ,trail:·
|
||||
let g:indentLine_char_list = ['│', '│', '│', '│']
|
||||
set shiftwidth=4
|
||||
set expandtab
|
||||
|
||||
" editing
|
||||
runtime! macros/matchit.vim
|
||||
set backspace=indent,eol,start
|
||||
|
||||
" visual feedback
|
||||
set laststatus=2
|
||||
set showmode
|
||||
set showcmd
|
||||
|
||||
@@ -71,651 +93,42 @@ set smartcase
|
||||
set ic
|
||||
|
||||
" cursor
|
||||
set guicursor=
|
||||
set guicursor+=a:blinkon0
|
||||
let &t_SI = "\<esc>[6 q"
|
||||
let &t_SR = "\<esc>[6 q"
|
||||
let &t_EI = "\<esc>[6 q"
|
||||
let &t_EI = "\<esc>[2 q"
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Plugins
|
||||
""""""""""""""""""""""""""""""""
|
||||
call plug#begin('~/.config/nvim/plugged')
|
||||
" Markdown
|
||||
Plug 'tpope/vim-markdown'
|
||||
" colors
|
||||
set bg=dark
|
||||
hi CursorLine cterm=NONE term=NONE ctermbg=NONE guibg=NONE
|
||||
hi CursorLine ctermbg=235
|
||||
|
||||
" Live-preview
|
||||
Plug 'nmante/vim-latex-live-preview'
|
||||
" map
|
||||
nnoremap ,nn :set nu! <CR>
|
||||
nnoremap ,NN :set nu <CR>
|
||||
inoremap <silent> ,f <Esc>i--<CR>Regards,<CR>Marcin Woźniak<CR>https://yorune.pl<Esc>
|
||||
nnoremap S :%s//g<Left><Left>
|
||||
nnoremap ee :!mupdf $(echo % \| sed 's/tex$/pdf/') & disown<CR><CR>
|
||||
map <C-n> :NERDTreeToggle<CR>
|
||||
nnoremap <silent> <C-t> :tabnew <CR>
|
||||
nnoremap <F11> :Goyo <CR>
|
||||
nnoremap <F7> :tabprevious<CR>
|
||||
nnoremap <F8> :tabnext<CR>
|
||||
|
||||
" Goyo plugin for writing mutt mail
|
||||
Plug 'junegunn/goyo.vim'
|
||||
|
||||
" Themes
|
||||
Plug 'gruvbox-community/gruvbox', { 'as': 'gruvbox'}
|
||||
Plug 'Mofiqul/dracula.nvim'
|
||||
|
||||
" Fzf plugin
|
||||
Plug 'junegunn/fzf.vim'
|
||||
Plug 'junegunn/fzf'
|
||||
|
||||
" CSS
|
||||
Plug 'ap/vim-css-color'
|
||||
|
||||
" Copilot
|
||||
Plug 'github/copilot.vim'
|
||||
|
||||
" PyRight
|
||||
Plug 'sakhnik/nvim-gdb', { 'do': ':!./install.sh' }
|
||||
|
||||
" Ansible yaml
|
||||
Plug 'pearofducks/ansible-vim', { 'do': './UltiSnips/generate.sh' }
|
||||
Plug 'Yggdroot/indentLine'
|
||||
|
||||
" Terraform
|
||||
Plug 'hashivim/vim-terraform'
|
||||
|
||||
" GoLang
|
||||
Plug 'fatih/vim-go'
|
||||
|
||||
" Multiple cursors
|
||||
Plug 'terryma/vim-multiple-cursors'
|
||||
|
||||
" Enable gentoo-syntax in vim
|
||||
Plug 'gentoo/gentoo-syntax'
|
||||
Plug 'tpope/vim-commentary'
|
||||
Plug 'tpope/vim-surround'
|
||||
Plug 'junegunn/vim-easy-align'
|
||||
|
||||
" Git tool
|
||||
Plug 'tpope/vim-fugitive'
|
||||
|
||||
" Prettier
|
||||
Plug 'prettier/vim-prettier', { 'do': 'yarn install --frozen-lockfile --production' }
|
||||
|
||||
" Debug
|
||||
Plug 'puremourning/vimspector'
|
||||
Plug 'mfussenegger/nvim-dap'
|
||||
|
||||
" LSP
|
||||
Plug 'neovim/nvim-lspconfig'
|
||||
Plug 'hrsh7th/nvim-cmp'
|
||||
Plug 'hrsh7th/cmp-buffer'
|
||||
Plug 'hrsh7th/cmp-path'
|
||||
Plug 'hrsh7th/cmp-cmdline'
|
||||
Plug 'hrsh7th/cmp-nvim-lsp'
|
||||
Plug 'saadparwaiz1/cmp_luasnip'
|
||||
Plug 'L3MON4D3/LuaSnip'
|
||||
Plug 'sbdchd/neoformat'
|
||||
|
||||
Plug 'hrsh7th/cmp-vsnip'
|
||||
Plug 'hrsh7th/vim-vsnip'
|
||||
Plug 'hrsh7th/vim-vsnip-integ'
|
||||
|
||||
" Telescope
|
||||
Plug 'nvim-lua/plenary.nvim'
|
||||
Plug 'nvim-telescope/telescope.nvim'
|
||||
|
||||
" Tree
|
||||
Plug 'nvim-tree/nvim-web-devicons'
|
||||
Plug 'nvim-tree/nvim-tree.lua'
|
||||
|
||||
" SHFMT
|
||||
Plug 'z0mbix/vim-shfmt', { 'for': 'sh' }
|
||||
|
||||
" Mikrotik
|
||||
Plug 'zainin/vim-mikrotik'
|
||||
|
||||
Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
|
||||
Plug 'nvim-treesitter/nvim-treesitter-context'
|
||||
|
||||
" Autopair
|
||||
Plug 'windwp/nvim-autopairs'
|
||||
|
||||
" AI
|
||||
Plug 'folke/snacks.nvim'
|
||||
Plug 'coder/claudecode.nvim'
|
||||
|
||||
call plug#end()
|
||||
|
||||
" LUA
|
||||
lua<<EOF
|
||||
vim.filetype.add({
|
||||
-- Ansible
|
||||
pattern = {
|
||||
[".*playbooks/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*tasks/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*handlers/.*%.ya?ml"] = "yaml.ansible",
|
||||
[".*roles/.*/.*%.ya?ml"] = "yaml.ansible",
|
||||
},
|
||||
-- Docker Compose + GitLab CI (merged into one filename table)
|
||||
filename = {
|
||||
["docker-compose.yml"] = "yaml.docker-compose",
|
||||
["docker-compose.yaml"] = "yaml.docker-compose",
|
||||
[".gitlab-ci.yml"] = "yaml.gitlab",
|
||||
[".gitlab-ci.yaml"] = "yaml.gitlab",
|
||||
},
|
||||
})
|
||||
|
||||
-- capabilities for nvim-cmp
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
-- Prefer LspAttach instead of per-server on_attach
|
||||
vim.api.nvim_create_autocmd('LspAttach', {
|
||||
callback = function(args)
|
||||
local bufnr = args.buf
|
||||
|
||||
vim.bo[bufnr].omnifunc = 'v:lua.vim.lsp.omnifunc'
|
||||
|
||||
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', '<space>K', vim.lsp.buf.hover, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', 'ge', vim.diagnostic.setqflist, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, { buffer = bufnr, silent = true })
|
||||
vim.keymap.set('n', 'gr', vim.lsp.buf.references, { buffer = bufnr, silent = true })
|
||||
end,
|
||||
})
|
||||
|
||||
local border = 'rounded'
|
||||
|
||||
vim.lsp.config('*', {
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
vim.diagnostic.config({
|
||||
float = { border = border },
|
||||
})
|
||||
|
||||
vim.lsp.handlers["textDocument/hover"] = function(err, result, ctx, config)
|
||||
config = config or {}
|
||||
config.border = border
|
||||
return vim.lsp.handlers.hover(err, result, ctx, config)
|
||||
end
|
||||
|
||||
vim.lsp.handlers["textDocument/signatureHelp"] = function(err, result, ctx, config)
|
||||
config = config or {}
|
||||
config.border = border
|
||||
return vim.lsp.handlers.signature_help(err, result, ctx, config)
|
||||
end
|
||||
|
||||
-- Server-specific overrides
|
||||
vim.lsp.config('yamlls', {
|
||||
settings = {
|
||||
json = {
|
||||
schemas = {
|
||||
["https://raw.githubusercontent.com/quantumblacklabs/kedro/develop/static/jsonschema/kedro-catalog-0.17.json"]= "conf/**/*catalog*",
|
||||
["https://json.schemastore.org/github-workflow.json"] = "/.github/workflows/*",
|
||||
["https://github.com/ansible/schemas/blob/main/f/ansible.json"] = "*.yaml,*.yml",
|
||||
}
|
||||
},
|
||||
yaml = { keyOrdering = false },
|
||||
},
|
||||
})
|
||||
|
||||
vim.lsp.config('gopls', {
|
||||
cmd = {"gopls", "serve"},
|
||||
filetypes = { "go", "gomod", "gowork", "gotmpl" },
|
||||
settings = {
|
||||
gopls = {
|
||||
analyses = { unusedparams = true },
|
||||
staticcheck = true,
|
||||
linksInHover = false,
|
||||
codelenses = {
|
||||
generate = true,
|
||||
gc_details = true,
|
||||
regenerate_cgo = true,
|
||||
tidy = true,
|
||||
upgrade_depdendency = true,
|
||||
vendor = true,
|
||||
},
|
||||
completeUnimported = true,
|
||||
usePlaceholders = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
vim.lsp.config('ruff', {})
|
||||
|
||||
-- Enable servers (remove 'solargraph' if not using Ruby)
|
||||
vim.lsp.enable({
|
||||
'clangd', 'bashls', 'yamlls', 'ansiblels', 'gopls', 'solargraph',
|
||||
'terraformls', 'tflint', 'marksman', 'rust_analyzer', 'ruff',
|
||||
})
|
||||
|
||||
-- nvim-cmp setup with Tab support
|
||||
local cmp = require('cmp')
|
||||
cmp.setup({
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
|
||||
-- Tab: indent on empty/whitespace-only lines, trigger completion elsewhere
|
||||
['<Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif vim.fn["copilot#GetDisplayedSuggestion"]().text ~= "" then
|
||||
vim.fn.feedkeys(vim.fn["copilot#Accept"](""), "n")
|
||||
elseif vim.api.nvim_get_current_line():match("^%s*$") then
|
||||
fallback()
|
||||
else
|
||||
cmp.complete()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
|
||||
-- Shift-Tab: go to previous completion item or fallback
|
||||
['<S-Tab>'] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { 'i', 's' }),
|
||||
|
||||
-- Enter to confirm selection
|
||||
['<CR>'] = cmp.mapping.confirm({ select = true }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
{ name = 'luasnip' },
|
||||
{ name = 'buffer' },
|
||||
{ name = 'path' },
|
||||
}),
|
||||
})
|
||||
|
||||
vim.keymap.set("t", "<C-w>h", "<C-\\><C-n><C-w>h", { desc = "Move to left window" })
|
||||
vim.keymap.set("t", "<C-w>l", "<C-\\><C-n><C-w>l", { desc = "Move to right window" })
|
||||
vim.keymap.set("t", "<C-w>p", "<C-\\><C-n><C-w>p", { desc = "Focus previous window" })
|
||||
|
||||
require("claudecode").setup()
|
||||
EOF
|
||||
|
||||
" Added popout window to see diagnostic
|
||||
set updatetime=250
|
||||
autocmd! CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false, scope="cursor"})
|
||||
|
||||
" Copilot
|
||||
let g:copilot_no_tab_map = v:true
|
||||
|
||||
" Neoformat
|
||||
let g:neoformat_try_formatprg = 1
|
||||
let g:neoformat_basic_format_trim = 1
|
||||
let g:neoformat_only_msg_on_error = 1
|
||||
" autocmd BufWritePre * silent! undojoin | Neoformat
|
||||
|
||||
let g:neoformat_python_ruff = {
|
||||
\ 'exe': 'ruff',
|
||||
\ 'stdin': 1,
|
||||
\ 'args': ['format', '--line-length=80', '-q', '-'],
|
||||
\ }
|
||||
let g:neoformat_enabled_python = ['ruff']
|
||||
|
||||
" Terraform
|
||||
let g:terraform_fmt_on_save=1
|
||||
let g:terraform_align=1
|
||||
|
||||
function! s:check_back_space() abort
|
||||
let col = col('.') - 1
|
||||
return !col || getline('.')[col - 1] =~# '\s'
|
||||
endfunction
|
||||
|
||||
" Enable show hidden in NerdTree
|
||||
let g:NERDTreeShowHidden=1
|
||||
cnoremap w!! execute 'silent! write !sudo tee % >/dev/null' <bar> edit!
|
||||
|
||||
" latex
|
||||
let g:tex_flavor = "latex"
|
||||
|
||||
" Debug
|
||||
let g:vimspector_enable_mappings = 'VISUAL_STUDIO'
|
||||
let g:vimspector_install_gadgets = [ 'debugpy', 'vscode-go', 'CodeLLDB', 'vscode-node-debug2' ]
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Theme
|
||||
""""""""""""""""""""""""""""""""
|
||||
" colorscheme gruvbox
|
||||
" colorscheme default
|
||||
colorscheme dracula
|
||||
let g:gruvbox_invert_selection='0'
|
||||
let g:gruvbox_contrast_dark = 'hard'
|
||||
set background=dark
|
||||
" hi Normal ctermbg=NONE
|
||||
hi Pmenu ctermfg=NONE ctermbg=236 cterm=NONE guifg=NONE guibg=#64666d gui=NONE
|
||||
hi PmenuSel ctermfg=NONE ctermbg=246 cterm=NONE guifg=NONE guibg=#204a87 gui=NONE
|
||||
hi CursorLine cterm=NONE term=NONE ctermbg=NONE guibg=NONE
|
||||
hi CursorLine ctermbg=235
|
||||
hi DiffAdd cterm=BOLD ctermfg=NONE ctermbg=22
|
||||
hi DiffDelete cterm=BOLD ctermfg=NONE ctermbg=52
|
||||
hi DiffChange cterm=BOLD ctermfg=NONE ctermbg=23
|
||||
hi DiffText cterm=BOLD ctermfg=NONE ctermbg=23
|
||||
set t_ZH="\e[3m"
|
||||
set t_ZR="\e[23m"
|
||||
highlight Comment cterm=italic gui=italic
|
||||
highlight htmlArg gui=italic cterm=italic
|
||||
|
||||
" column
|
||||
set textwidth=80
|
||||
set colorcolumn=80
|
||||
highlight ColorColumn ctermbg=236
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Status Line
|
||||
""""""""""""""""""""""""""""""""
|
||||
function! GitBranch()
|
||||
return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'")
|
||||
endfunction
|
||||
|
||||
function! StatuslineGit()
|
||||
let l:branchname = GitBranch()
|
||||
return strlen(l:branchname) > 0?' '.l:branchname.' ':''
|
||||
endfunction
|
||||
|
||||
set laststatus=3
|
||||
|
||||
lua <<EOF
|
||||
vim.o.statusline = table.concat({
|
||||
"%#IncSearch#",
|
||||
"%{&filetype!=#''?' ['.&filetype..'] ':' '}",
|
||||
"%{&modified?'[+] ':''}",
|
||||
"%#CursorLineNr#",
|
||||
" %F",
|
||||
"%=",
|
||||
"%#CursorLineNr#",
|
||||
"%{StatuslineGit()}",
|
||||
"%#Search#",
|
||||
" %l/%L",
|
||||
" [%c]",
|
||||
})
|
||||
EOF
|
||||
|
||||
" Disable godoc keys
|
||||
let g:go_doc_keywordprg_enabled = 0
|
||||
set completeopt-=preview
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Keyboard shortcuts
|
||||
""""""""""""""""""""""""""""""""
|
||||
let mapleader = "\<Space>"
|
||||
nmap <leader>2 :w!<cr>
|
||||
|
||||
" Adding print message
|
||||
autocmd FileType python nmap <leader>f i print("--------DEBUG--------")<CR>print()<CR>print("--------END DEBUG--------")<UP><LEFT>
|
||||
autocmd FileType sh nmap <leader>f i echo -e "--------DEBUG--------"<CR>echo -e ""<CR>echo -e "--------END DEBUG--------"<UP><LEFT>
|
||||
|
||||
" Adding commentary
|
||||
xmap <leader>c <Plug>Commentary
|
||||
nmap <leader>c <Plug>Commentary
|
||||
omap <leader>c <Plug>Commentary
|
||||
nmap <leader>c <Plug>CommentaryLine
|
||||
|
||||
xmap <C-_> <Plug>Commentary
|
||||
nmap <C-_> <Plug>Commentary
|
||||
omap <C-_> <Plug>Commentary
|
||||
nmap <C-_> <Plug>CommentaryLine
|
||||
|
||||
" Better tab (visual mode only - insert mode Tab is handled by nvim-cmp above)
|
||||
vnoremap <Tab> >
|
||||
vnoremap <S-Tab> <
|
||||
|
||||
" Better word
|
||||
nmap yw vey
|
||||
|
||||
" Select all text
|
||||
nmap <C-a> gg<S-v>G
|
||||
|
||||
" Telescope
|
||||
nmap <Leader>e <cmd>Telescope buffers<cr>
|
||||
nmap <Leader>w <cmd>Telescope find_files<cr>
|
||||
nmap <Leader>q <cmd>Telescope live_grep<cr>
|
||||
nmap <Leader>g <cmd>Telescope git_branches<cr>
|
||||
nmap <Leader>a <cmd>Telescope diagnostics<cr>
|
||||
|
||||
" Resize window
|
||||
nnoremap Ó :vertical resize -5<CR>
|
||||
nnoremap Ô :res -5<CR>
|
||||
nnoremap ū :res +5<CR>
|
||||
nnoremap Ł :vertical resize +5<CR>
|
||||
|
||||
" Split window
|
||||
nnoremap _ :vsp <CR>
|
||||
nnoremap - :split <CR>
|
||||
|
||||
" Reload file
|
||||
nnoremap <F5> :edit <CR>
|
||||
nnoremap <Leader><F5> :edit! <CR>
|
||||
|
||||
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
|
||||
|
||||
" Moving line up or down using alt
|
||||
nnoremap <A-Up> :m-2<CR>
|
||||
nnoremap <A-Down> :m+<CR>
|
||||
inoremap <A-Up> <Esc>:m-2<CR>
|
||||
inoremap <A-Down> <Esc>:m+<CR>
|
||||
vnoremap <A-Down> :m '>+1<CR>gv=gv
|
||||
vnoremap <A-Up> :m '<-2<CR>gv=gv
|
||||
|
||||
nnoremap Ż :m-2<CR>
|
||||
nnoremap ∆ :m+<CR>
|
||||
vnoremap ∆ :m '>+1<CR>gv=gv
|
||||
vnoremap Ż :m '<-2<CR>gv=gv
|
||||
|
||||
nnoremap <A-k> :m-2<CR>
|
||||
nnoremap <A-j> :m+<CR>
|
||||
inoremap <A-k> <Esc>:m-2<CR>
|
||||
inoremap <A-j> <Esc>:m+<CR>
|
||||
vnoremap <A-j> :m '>+1<CR>gv=gv
|
||||
vnoremap <A-k> :m '<-2<CR>gv=gv
|
||||
|
||||
" Better replace
|
||||
nnoremap <Leader>s :%s//g<Left><Left>
|
||||
vnoremap <Leader>s :s//g<Left><Left>
|
||||
|
||||
" Better adding into beginning and ending line
|
||||
vnoremap F <C-v>$A
|
||||
vnoremap f <C-v>0I
|
||||
|
||||
" Better management of tabs
|
||||
nnoremap <C-t> :tabnew<CR>
|
||||
|
||||
nnoremap <F7> :tabprevious<CR>
|
||||
nnoremap <F8> :tabnext<CR>
|
||||
inoremap <F7> <Esc>:tabprevious<CR>i
|
||||
inoremap <F8> <Esc>:tabnext<CR>i
|
||||
|
||||
nnoremap <Leader>k :tabprevious<CR>
|
||||
nnoremap <Leader>j :tabnext<CR>
|
||||
|
||||
inoremap <C-t> <Esc>:tabnew<CR>
|
||||
|
||||
" Better moving
|
||||
nnoremap J }
|
||||
nnoremap K {
|
||||
vnoremap J }
|
||||
vnoremap K {
|
||||
nnoremap <C-h> <C-w>h
|
||||
nnoremap <C-j> <C-w>j
|
||||
nnoremap <C-k> <C-w>k
|
||||
nnoremap <C-l> <C-w>l
|
||||
tnoremap <C-h> <C-\><C-n><C-w>h
|
||||
tnoremap <C-j> <C-\><C-n><C-w>j
|
||||
tnoremap <C-k> <C-\><C-n><C-w>k
|
||||
tnoremap <C-l> <C-\><C-n><C-w>l
|
||||
|
||||
" Copy into system
|
||||
noremap <Leader>y "*y
|
||||
noremap <Leader>p "*p
|
||||
|
||||
" Code
|
||||
map <Leader><Tab> Vgaip= <CR>
|
||||
|
||||
" Multiple cursors
|
||||
let g:multi_cursor_start_word_key = '<C-n>'
|
||||
let g:multi_cursor_select_all_word_key = '<A-n>'
|
||||
let g:multi_cursor_start_key = 'g<C-n>'
|
||||
let g:multi_cursor_select_all_key = 'g<A-n>'
|
||||
let g:multi_cursor_next_key = '<C-n>'
|
||||
let g:multi_cursor_prev_key = '<C-p>'
|
||||
let g:multi_cursor_skip_key = '<C-x>'
|
||||
let g:multi_cursor_quit_key = '<Esc>'
|
||||
|
||||
" Others
|
||||
nnoremap ee :!mupdf $(echo % \| sed 's/tex$/pdf/') & disown<CR><CR>
|
||||
map <C-d> :NvimTreeToggle<CR>
|
||||
nnoremap <leader>r :NvimTreeRefresh<CR>
|
||||
nnoremap <leader>n :NvimTreeFindFile<CR>
|
||||
nnoremap <F11> :Goyo <CR>
|
||||
cnoremap w!! execute 'silent! write !sudo tee % >/dev/null' <bar> edit!
|
||||
map <F3> :setlocal spell! spelllang=en<CR>
|
||||
map <F4> :setlocal spell! spelllang=pl<CR>
|
||||
|
||||
" Human Errors
|
||||
:command! W w
|
||||
:command! Q q
|
||||
:command! Wq wq
|
||||
:command! X x
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Custom functions
|
||||
""""""""""""""""""""""""""""""""
|
||||
lua <<EOF
|
||||
function go_org_imports(wait_ms)
|
||||
local params = vim.lsp.util.make_range_params()
|
||||
params.context = {only = {"source.organizeImports"}}
|
||||
local result = vim.lsp.buf_request_sync(0, "textDocument/codeAction", params, wait_ms)
|
||||
for cid, res in pairs(result or {}) do
|
||||
for _, r in pairs(res.result or {}) do
|
||||
if r.edit then
|
||||
local enc = (vim.lsp.get_client_by_id(cid) or {}).offset_encoding or "utf-16"
|
||||
vim.lsp.util.apply_workspace_edit(r.edit, enc)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
EOF
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" Files
|
||||
""""""""""""""""""""""""""""""""
|
||||
|
||||
" Bash
|
||||
if executable('shfmt')
|
||||
let &l:formatprg='shfmt -i ' . &l:shiftwidth . ' -ln posix -sr -ci -s'
|
||||
endif
|
||||
|
||||
let g:shfmt_extra_args = '-i 4 -ci -sr -s'
|
||||
let g:shfmt_fmt_on_save = 1
|
||||
let g:shfmt_opt="-ci"
|
||||
|
||||
" Python
|
||||
autocmd BufRead,BufNewFile *.py set textwidth=0
|
||||
autocmd BufRead,BufNewFile *.py set fo-=t
|
||||
autocmd BufWritePre *.py silent! undojoin | Neoformat ruff
|
||||
noremap <Leader>f :silent! undojoin \| Neoformat ruff <CR> :w<CR>
|
||||
|
||||
" Newsboat
|
||||
autocmd BufRead,BufNewFile urls set textwidth=0
|
||||
|
||||
" Latex
|
||||
autocmd BufWritePost *.tex silent! execute "!pdflatex --shell-escape -synctex=1 -interaction=nonstopmode % > /dev/null " | redraw!
|
||||
" autocmd BufWritePost *.tex silent! execute "!pdflatex --shell-escape -synctex=1 -interaction=nonstopmode % > /dev/null " | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!pdflatex % > /dev/null " | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!latexmk -pdf -silent % > /dev/null" | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!rm -rf *.fls *.ilg *.nav *.snm *.toc *.idx *.lof *.lot *.synctex.gz *.aux *.fdb_latexmk *.fls *.log *.out > /dev/null" | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!pkill -HUP mupdf > /dev/null" | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!sudo rm -rf *.fls *.ilg *.nav *.snm *.toc *.idx *.lof *.lot *.synctex.gz *.aux *.fdb_latexmk *.fls *.log *.out > /dev/null" | redraw!
|
||||
autocmd BufWritePost *.tex silent! execute "!sudo pkill -HUP mupdf > /dev/null" | redraw!
|
||||
|
||||
" Mutt
|
||||
" mutt
|
||||
autocmd BufRead,BufNewFile /tmp/neomutt* let g:goyo_width=80
|
||||
autocmd BufRead,BufNewFile /tmp/neomutt* :Goyo
|
||||
autocmd BufRead,BufNewFile /tmp/neomutt* map ZZ :Goyo\|x!<CR>
|
||||
autocmd BufRead,BufNewFile /tmp/neomutt* map ZQ :Goyo\|q!<CR>
|
||||
|
||||
" Yaml
|
||||
autocmd BufRead,BufNewFile *.yaml,*.yml let g:indentLine_enabled = 1
|
||||
autocmd BufRead,BufNewFile *.yaml,*.yml let g:indentLine_char = '⦙'
|
||||
autocmd BufWritePre *.yaml,*.yml silent! undojoin | Neoformat prettier
|
||||
|
||||
" JSON
|
||||
autocmd BufWritePre *.json silent! undojoin | Neoformat prettier
|
||||
|
||||
" GoLang
|
||||
autocmd BufRead *.go set noexpandtab
|
||||
autocmd BufWritePre *.go lua go_org_imports()
|
||||
let g:go_def_mapping_enabled = 0
|
||||
let g:go#fmt#autosave = v:true
|
||||
autocmd BufWritePre *.go silent! undojoin | Neoformat
|
||||
autocmd BufWritePre *.gomod silent! undojoin | Neoformat
|
||||
|
||||
" Conf
|
||||
au BufNewFile,BufRead *.conf setfiletype conf
|
||||
|
||||
" Mikrotik
|
||||
au BufNewFile,BufRead *.mikrotik setfiletype routeros
|
||||
|
||||
" Ebuild
|
||||
au BufNewFile,BufRead,BufWritePre *.ebuild let g:shfmt_extra_args = '-ci -sr -s'
|
||||
|
||||
" TOML
|
||||
autocmd BufWritePre *.toml silent! undojoin | Neoformat taplo
|
||||
|
||||
" Terraform
|
||||
autocmd BufWritePre *.tf lua vim.lsp.buf.format()
|
||||
autocmd BufWritePre *.tfvars lua vim.lsp.buf.format()
|
||||
|
||||
" Markdown
|
||||
autocmd BufRead,BufNewFile *.md setlocal spell spelllang=en_us
|
||||
autocmd BufWritePre *.md silent! undojoin | Neoformat mdformat
|
||||
|
||||
" Automatically deletes all trailing whitespace and newlines at end of file on save.
|
||||
autocmd BufWritePre * %s/\s\+$//e
|
||||
autocmd BufWritepre * %s/\n\+\%$//e
|
||||
|
||||
" highlight the visual selection after pressing enter.
|
||||
xnoremap <silent> <cr> "*y:silent! let searchTerm = '\V'.substitute(escape(@*, '\/'), "\n", '\\n', "g") <bar> let @/ = searchTerm <bar> echo '/'.@/ <bar> call histadd("search", searchTerm) <bar> set hls<cr>
|
||||
|
||||
""""""""""""""""""""""""""""""""
|
||||
" FZF
|
||||
""""""""""""""""""""""""""""""""
|
||||
let $FZF_DEFAULT_COMMAND = 'find . -type f -not -path "*/\.git/*" -not -path "*/\.local/share/nvim/*" -not -path "./Library/*" '
|
||||
command! -bang -nargs=* Find call fzf#vim#grep('rg --column --line-number --no-heading --fixed-strings --ignore-case --hidden --follow --color "always" '.shellescape(<q-args>), 1, <bang>0)
|
||||
command! -bang -nargs=* FindCurrentWord call fzf#vim#grep('rg --column --line-number --no-heading --fixed-strings --ignore-case --hidden --follow --color "always" '.shellescape(expand('<cword>')), 1, <bang>0)
|
||||
set grepprg=rg\ --vimgrep
|
||||
|
||||
" Custom functions "
|
||||
function! RemoveForti()
|
||||
:%g/set uuid .*/d
|
||||
:%g/set comment .*/d
|
||||
:%s/ \+//g
|
||||
:%s/edit \(\d\{1,}\)/edit 0/g
|
||||
:g/^$/d
|
||||
endfunction
|
||||
|
||||
function! RemoveFortiAddresses()
|
||||
:e!
|
||||
:%g/set uuid .*/d
|
||||
:%g/set comment .*/d
|
||||
:%s/ \+//g
|
||||
:%s/edit \(\d\{1,}\)/edit 0/g
|
||||
:%s/next\n/set allow-routing enable\rnext\r/g
|
||||
:g/^$/d
|
||||
:%!uniq
|
||||
:w!
|
||||
endfunction
|
||||
|
||||
function! BlurForti()
|
||||
:%g/set uuid .*/d
|
||||
:%g/set description .*/d
|
||||
:%g/set comment .*/d
|
||||
:%g/set comments .*/d
|
||||
:%s/username .*/username "XXXXXXXXXXXXXXXXXXXXXXX"/g
|
||||
:%s/dn .*/dn "XXXXXXXXXXXXXXXXXXXXXXX"/g
|
||||
:%s/psksecret ENC .*/psksecret XXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/password ENC .*/password XXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/passwd ENC .*/passwd XXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/group-name .*/group-name "XXXXXXXXXXXXXXXXXXXXXXX"/g
|
||||
:%s/ssh-rsa .*/ssh-rsa XXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/-----BEGIN OPENSSH PRIVATE KEY.*----/-----BEGIN OPENSSH PRIVATE KEY -----\rXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/-----BEGIN CERTIFICATE.*----/-----BEGIN CERTIFICATE -----\rXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/-----BEGIN ENCRYPTED PRIVATE KEY.*----/-----BEGIN ENCRYPTED PRIVATE KEY -----\rXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/g
|
||||
:%s/"VPN_.*"/"VPN_XXXXX"/g
|
||||
:%s/\v(\d{1,3}\.){3}\d{1,3}/X.X.X.X/g
|
||||
endfunction
|
||||
|
||||
function! ColoursFortiSSL()
|
||||
:%s/next\n/set color 23\rset allow-routing enable\rnext\r/g
|
||||
endfunction
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
This is a mirror of http://www.vim.org/scripts/script.php?script_id=365
|
||||
|
||||
Write BASH-scripts by inserting comments, statements, tests, variables, builtins, etc..
|
||||
Speed up writing new scripts considerably.
|
||||
Write code und comments with a professional appearance from the beginning.
|
||||
|
||||
Here are some screen shots : http://lug.fh-swf.de/vim/vim-bash/screenshots-en.html
|
||||
|
||||
The help file online : http://lug.fh-swf.de/vim/vim-bash/bashsupport.html
|
||||
|
||||
The key mappings of this plugin (PDF) : http://lug.fh-swf.de/vim/vim-bash/bash-hotkeys.pdf
|
||||
|
||||
DOCUMENTATION
|
||||
--------------------------------------------------------
|
||||
This plugin comes with a help file (bashsupport.txt).
|
||||
Read it with
|
||||
|
||||
:h bashsupport
|
||||
|
||||
** PLEASE READ THE DOCUMENTATION **
|
||||
|
||||
Editing actions differ for different modes!
|
||||
There are a lot of features which can be configured or customized to match your needs.
|
||||
|
||||
The installation explained: http://www.thegeekstuff.com article
|
||||
"Make Vim as Your Bash-IDE Using bash-support Plugin"
|
||||
(http://www.thegeekstuff.com/2009/02/make-vim-as-your-bash-ide-using-bash-support-plugin)
|
||||
|
||||
Plugin featured in the linux.com article 'Turn Vim into a bash IDE' : http://www.linux.com/articles/114359
|
||||
|
||||
GitHub
|
||||
--------------------------------------------------------
|
||||
Bash Support is on GitHub:
|
||||
|
||||
https://github.com/WolfgangMehner/vim-plugins
|
||||
|
||||
(Please help us keep track of all the issues and name your report/request "Bash-Support: <title>")
|
||||
|
||||
MAILING LIST
|
||||
--------------------------------------------------------
|
||||
You can subscribe to the vim-plugins-list mailing list to post your questions or
|
||||
suggestions for improvement or to report bugs. The list will also be used to
|
||||
announce new releases ( c.vim / bash-support / perl-support / doxygen-support ).
|
||||
Visit the following page for subscribing to the mailing list:
|
||||
|
||||
http://lug.fh-swf.de/cgi-bin/mailman/listinfo/vim-plugins-list
|
||||
|
||||
The vim-plugins-list list is very low on traffic.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,193 @@
|
||||
README for bash-support.vim (Version 4.2.1) / March 25 2014
|
||||
|
||||
* INSTALLATION
|
||||
* RELEASE NOTES
|
||||
* FILES
|
||||
* ADDITIONAL TIPS
|
||||
|
||||
Bash Support implements a bash-IDE for Vim/gVim. It is written to considerably
|
||||
speed up writing code in a consistent style. This is done by inserting
|
||||
complete statements, comments, idioms, and code snippets. Syntax checking,
|
||||
running a script, starting a debugger can be done with a keystroke. There are
|
||||
many additional hints and options which can improve speed and comfort when
|
||||
writing shell scripts.
|
||||
|
||||
================================================================================
|
||||
INSTALLATION
|
||||
================================================================================
|
||||
|
||||
(1) LINUX
|
||||
----------
|
||||
|
||||
The subdirectories in the zip archive bash-support.zip mirror the directory
|
||||
structure which is needed below the local installation directory $HOME/.vim/
|
||||
(find the value of $HOME with ":echo $HOME" from inside Vim).
|
||||
|
||||
(1.0) Save the template files in '$HOME/.vim/bash-support/templates/Templates' if
|
||||
you have changed any of them.
|
||||
|
||||
(1.1) Copy the zip archive bash-support.zip to $HOME/.vim and run
|
||||
|
||||
unzip bash-support.zip
|
||||
|
||||
(1.2) Loading of plugin files must be enabled. If not use
|
||||
|
||||
:filetype plugin on
|
||||
|
||||
This is the minimal content of the file '$HOME/.vimrc'. Create one if there
|
||||
is none or use the files in $HOME/.vim/bash-support/rc as a starting point.
|
||||
|
||||
(1.3) Set at least some personal details in the file
|
||||
'$HOME/.vim/bash-support/templates/Templates'
|
||||
Here is the minimal personalization (my settings as an example):
|
||||
|
||||
SetMacro( 'AUTHOR', 'Dr. Fritz Mehner' )
|
||||
SetMacro( 'AUTHORREF', 'fgm' )
|
||||
SetMacro( 'EMAIL', 'mehner.fritz@fh-swf.de' )
|
||||
SetMacro( 'ORGANIZATION','FH Südwestfalen, Iserlohn' )
|
||||
SetMacro( 'COPYRIGHT', 'Copyright (c) |YEAR|, |AUTHOR|' )
|
||||
|
||||
(Read more about the template system in the plugin documentation)
|
||||
|
||||
(1.4) Make the plugin help accessable by typing the following command on the
|
||||
Vim command line:
|
||||
|
||||
:helptags $HOME/.vim/doc/
|
||||
|
||||
(1.5) Consider additional settings in the file '$HOME/.vimrc'. The files
|
||||
customization.vimrc and customization.gvimrc are replacements or extensions
|
||||
for your .vimrc and .gvimrc. You may want to use parts of them. The files
|
||||
are documented.
|
||||
|
||||
|
||||
(2) WINDOWS
|
||||
------------
|
||||
|
||||
The subdirectories in the zip archive bash-support.zip mirror the directory
|
||||
structure which is needed below the local installation directory
|
||||
$HOME/vimfiles/ (find the value of $HOME with ":echo $HOME" from inside Vim).
|
||||
|
||||
(2.0) Save the template files in '$HOME/vimfiles/bash-support/templates/Templates'
|
||||
if you have changed any of them.
|
||||
|
||||
(2.1) Copy the zip archive bash-support.zip to $HOME/vimfiles and run
|
||||
|
||||
unzip bash-support.zip
|
||||
|
||||
(2.2) Loading of plugin files must be enabled. If not use
|
||||
|
||||
:filetype plugin on
|
||||
|
||||
This is the minimal content of the file '$HOME/_vimrc'. Create one if there
|
||||
is none or use the files in $HOME/vimfiles/bash-support/rc as a starting point.
|
||||
|
||||
(2.3) Set at least some personal details in the file
|
||||
'$HOME/vimfiles/bash-support/templates/Templates'
|
||||
Here is the minimal personalization (my settings as an example):
|
||||
|
||||
SetMacro( 'AUTHOR', 'Dr. Fritz Mehner' )
|
||||
SetMacro( 'AUTHORREF', 'fgm' )
|
||||
SetMacro( 'EMAIL', 'mehner.fritz@fh-swf.de' )
|
||||
SetMacro( 'ORGANIZATION','FH Südwestfalen, Iserlohn' )
|
||||
SetMacro( 'COPYRIGHT', 'Copyright (c) |YEAR|, |AUTHOR|' )
|
||||
|
||||
(Read more about the template system in the plugin documentation)
|
||||
|
||||
(2.4) Make the plugin help accessable by typing the following command on the
|
||||
Vim command line:
|
||||
|
||||
:helptags $HOME\vimfiles\doc\
|
||||
|
||||
(2.5) Consider additional settings in the file '$HOME/_vimrc'. The files
|
||||
customization.vimrc and customization.gvimrc are replacements or extensions
|
||||
for your _vimrc and _gvimrc. You may want to use parts of them. The files
|
||||
are documented.
|
||||
|
||||
There are a lot of features and options which can be used and influenced:
|
||||
|
||||
* use of template files and tags
|
||||
* using and managing personal code snippets
|
||||
* bash dictionary for keyword completion
|
||||
* removing the root menu
|
||||
* using additional plugins
|
||||
|
||||
Look at the bashsupport help with
|
||||
|
||||
:help bashsupport
|
||||
|
||||
+-----------------------------------------------+
|
||||
| +-------------------------------------------+ |
|
||||
| | ** Please read the documentation ** | |
|
||||
| | Actions differ for different modes! | |
|
||||
| +-------------------------------------------+ |
|
||||
+-----------------------------------------------+
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 4.2.1
|
||||
=======================================================================================
|
||||
- Bugfix: Setup of local templates in case of global installation.
|
||||
- Help: Bash and utility manuals wrapped on window width.
|
||||
- Bugfix: \hm and \hh work wrong in insert mode.
|
||||
- Bugfix: Better compatibility with custom mappings
|
||||
(use "normal!" and "noremap" consistently).
|
||||
- Added 'Bash_SetMapLeader' and 'Bash_ResetMapLeader'.
|
||||
- Minor corrections and improvements.
|
||||
|
||||
OLDER RELEASE NOTES : see file 'ChangeLog'
|
||||
=======================================================================================
|
||||
|
||||
=======================================================================================
|
||||
FILES
|
||||
=======================================================================================
|
||||
|
||||
README.bashsupport This file.
|
||||
|
||||
ftplugin/sh.vim The bash filetype plugin.
|
||||
plugin/bash-support.vim The bash plugin for Vim/gVim.
|
||||
bash-support/scripts/wrapper.sh A wrapper script for the use of an xterm.
|
||||
|
||||
doc/bashsupport.txt The help file for the local online help.
|
||||
|
||||
bash-support/codesnippets/* Some code snippets as a starting point.
|
||||
|
||||
bash-support/templates/* bash template files (see bashsupport.txt).
|
||||
|
||||
bash-support/wordlists/* Additional word lists (dictionaries).
|
||||
|
||||
----------------------- -------------------------------------------------------------
|
||||
----------------------- The following files and extensions are for convenience only.
|
||||
bash-support.vim will work without them.
|
||||
-------------------------------------------------------------
|
||||
|
||||
bash-support/rc/customization.bashrc Additional settings I use in .bashrc:
|
||||
set the prompt P2, P3, P4 (for debugging).
|
||||
|
||||
bash-support/rc/customization.vimrc Additional settings I use in .vimrc: incremental
|
||||
search, tabstop, hot keys, font, use of dictionaries,
|
||||
... The file is commented. Append it to your .vimrc
|
||||
if you like.
|
||||
|
||||
bash-support/rc/customization.gvimrc Additional settings I use in .gvimrc: hot keys,
|
||||
mouse settings, ... The file is commented.
|
||||
Append it to your .gvimrc if you like.
|
||||
|
||||
bash-support/doc/* Hotkey reference card (PDF), changelog.
|
||||
|
||||
|
||||
=======================================================================================
|
||||
ADDITIONAL TIPS
|
||||
=======================================================================================
|
||||
|
||||
(1) gvim. Toggle 'insert mode' <--> 'normal mode' with the right mouse button
|
||||
(see mapping in file customization.gvimrc).
|
||||
|
||||
(2) gvim. Use tear off menus and
|
||||
|
||||
(3) try 'Focus under mouse' as window behavior (No mouse click when the mouse
|
||||
pointer is back from the menu entry).
|
||||
|
||||
(4) Use Emulate3Buttons "on" (X11) even for a 3-button mouse. Pressing left and
|
||||
right button simultaneously without moving your fingers is faster then
|
||||
moving a finger to the middle button (often a wheel).
|
||||
|
||||
=======================================================================================
|
||||
@@ -0,0 +1,21 @@
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _trap_DEBUG
|
||||
# DESCRIPTION: Trap code for the pseudo-signal DEBUG. Generate a message.
|
||||
# The DEBUG trap is not inherited by functions.
|
||||
# Use 'set -o functrace'
|
||||
# PARAMETERS: 1) identification (e.g. line number $LINENO)
|
||||
# 2) variable name(s) to be tracked
|
||||
#===============================================================================
|
||||
function _trap_DEBUG ()
|
||||
{
|
||||
declare identification=$1;
|
||||
while [ ${#} -gt 1 ]; do
|
||||
shift
|
||||
echo -e "DEBUG [$identification] ${1} = '${!1}'"
|
||||
done
|
||||
} # ---------- end of function _trap_DEBUG ----------
|
||||
|
||||
trap '_trap_DEBUG $LINENO <-variable names->' DEBUG # trap DEBUG
|
||||
|
||||
#trap - DEBUG # reset the DEBUG trap
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _trap_ERROR
|
||||
# DESCRIPTION: Trap code for the pseudo-signal ERR (A command returning a
|
||||
# non-zero exit status). Generates an error message.
|
||||
# PARAMETERS: The current line number given by $LINENO .
|
||||
#===============================================================================
|
||||
function _trap_ERROR ()
|
||||
{
|
||||
echo -e "\nERROR line ${1}: Command exited with status ${?}"
|
||||
} # ---------- end of function _trap_ERROR ----------
|
||||
|
||||
trap '_trap_ERROR $LINENO' ERR # trap ERR
|
||||
|
||||
#trap - ERR # reset the ERR trap
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _trap_EXIT
|
||||
# DESCRIPTION: Trap code for the pseudo-signal EXIT. Generates an message.
|
||||
# PARAMETERS: The current line number given by $LINENO .
|
||||
#===============================================================================
|
||||
function _trap_EXIT ()
|
||||
{
|
||||
echo -e "\nEXIT line ${1}: Script exited with status ${?}"
|
||||
} # ---------- end of function ----------
|
||||
|
||||
trap '_trap_EXIT $LINENO' EXIT # trap EXIT
|
||||
|
||||
#trap - EXIT # reset the EXIT trap
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _trap_RETURN
|
||||
# DESCRIPTION: Trap code for the pseudo-signal RETURN. Generates a message.
|
||||
# The RETURN trap is not inherited by functions.
|
||||
# Use 'set -o functrace'
|
||||
# PARAMETERS: The current line number given by $LINENO .
|
||||
# variable(s) to be tracked
|
||||
#===============================================================================
|
||||
function _trap_RETURN ()
|
||||
{
|
||||
echo -e "\nRETURN line ${1}: "
|
||||
} # ---------- end of functionn _trap_RETURN ----------
|
||||
|
||||
trap '_trap_RETURN $LINENO' RETURN # trap RETURN
|
||||
|
||||
#trap - RETURN # reset the RETURN trap
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
basename=${pathname##*/}
|
||||
dirname=${pathname%/*}
|
||||
filename=${basename%%.*}
|
||||
lastextension=${basename##*.}
|
||||
allextensions=${basename#*.}
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
if [[ $number =~ ^[+-]?[0-9]+$ ]] ; then
|
||||
echo -e "match found : (signed) integer\n"
|
||||
fi
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
if [[ $number =~ ^[0-9]+$ ]] ; then
|
||||
echo -e "match found : integer\n"
|
||||
fi
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
#-----------------------------------------------------------------------
|
||||
# Check number of command line arguments
|
||||
#-----------------------------------------------------------------------
|
||||
[ $# -lt 1 ] && { echo -e "\n\tUsage: ${0##/*/} File\n"; exit 1; }
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
TMPFILE=$( mktemp /tmp/example.XXXXXXXXXX ) || exit 1
|
||||
|
||||
rm --force $TMPFILE
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
|
||||
TMPDIR=${TMPDIR:-/tmp} # defaults to /tmp if unset
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# Creates a particular temporary directory inside $TMPDIR.
|
||||
#-------------------------------------------------------------------------------
|
||||
TEMPORARY_DIR=$(mktemp -d "$TMPDIR/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX") || \
|
||||
{ echo "ERROR creating a temporary file"; exit 1; }
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
# When the program exits, it tries to remove the temporary folder.
|
||||
# This code is executed even if the process receives a signal 1,2,3 or 15.
|
||||
#-------------------------------------------------------------------------------
|
||||
trap '[ "$TEMPORARY_DIR" ] && rm --recursive --force "$TEMPORARY_DIR"' 0
|
||||
|
||||
touch $TEMPORARY_DIR/tempfile # new tempfile inside folder
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
# cleanup temporary file in case of a keyboard interrupt (SIGINT)
|
||||
# or a termination signal (SIGTERM)
|
||||
#-----------------------------------------------------------------------
|
||||
function cleanup_temp
|
||||
{
|
||||
[ -e $tmpfile ] && rm --force $tmpfile
|
||||
exit 0
|
||||
}
|
||||
|
||||
trap cleanup_temp SIGHUP SIGINT SIGPIPE SIGTERM
|
||||
|
||||
tmpfile=$(mktemp) || { echo "$0: creation of temporary file failed!"; exit 1; }
|
||||
|
||||
# use tmpfile ...
|
||||
|
||||
rm --force $tmpfile
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
# PS4 : timestamp; the current time in 24-hour HH:MM:SS format
|
||||
PS4='+[\t] '
|
||||
|
||||
# PS4 : timestamp; 'seconds.nanoseconds' since 1970-01-01 00:00:00 UT
|
||||
PS4='+[$(date "+%s.%N")] '
|
||||
|
||||
# PS4 : position, line number, function name
|
||||
# The following line avoids error messages due to an unset FUNCNAME[0] :
|
||||
# set +o nounset # Treat unset variables as an error
|
||||
#
|
||||
PS4='+|${BASH_SOURCE##*/} ${LINENO}${FUNCNAME[0]:+ ${FUNCNAME[0]}}| '
|
||||
|
||||
# PS4 : position, line number, function name, subshell information
|
||||
# The following line avoids error messages due to an unset FUNCNAME[0] :
|
||||
# set +o nounset # Treat unset variables as an error
|
||||
#
|
||||
PS4='+(${BASH_SOURCE##*/}: ${LINENO}) : ${FUNCNAME[0]} - [level ${SHLVL}, '
|
||||
PS4=$PS4'subshell ${BASH_SUBSHELL}, return code $?]\n '
|
||||
|
||||
# PS4 : default prompt
|
||||
PS4='+ '
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _assert
|
||||
# DESCRIPTION: Abort the script if assertion is false.
|
||||
# PARAMETERS: 1) expression used as test inside brackets
|
||||
# 2) optional information, e.g. $LINENO
|
||||
# RETURNS: 0 / 99 assertion is true / false
|
||||
#===============================================================================
|
||||
function _assert ()
|
||||
{
|
||||
if [ ! $1 ]; then
|
||||
echo "${0##*/}${2:+:$2}: assertion '$1' failed."
|
||||
exit 99
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
|
||||
DEBUG=${DEBUG:-0} # 0 = no debug output, 1 = show debug output,
|
||||
# or enable debug with: DEBUG=1 script.sh
|
||||
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _debug
|
||||
# DESCRIPTION: echo debug output controlled by a global variable
|
||||
# PARAMETERS: list, e.g.; "$LINENO: x=$x"
|
||||
# RETURNS: always 0
|
||||
#===============================================================================
|
||||
_debug ()
|
||||
{
|
||||
[ ${DEBUG} -ne 0 ] && echo -e "${@}"
|
||||
return 0
|
||||
} # ---------- end of function _debug ----------
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
# print the positional parameters
|
||||
printf "'%b'\n" "$0" "$@" | nl -v0 -s': '
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
|
||||
DEBUG=${DEBUG:-0} # 0 = no debug output, 1 = show debug output,
|
||||
# or enable debug with: DEBUG=1 script.sh
|
||||
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: _debug_timestamp
|
||||
# DESCRIPTION: timestamp + optional information
|
||||
# timestamp: {seconds since 1970-01-01 00:00:00}.{nanoseconds}
|
||||
# PARAMETERS: identification, e.g. $LINENO (optional)
|
||||
# RETURNS: always 0
|
||||
#===============================================================================
|
||||
_debug_timestamp ()
|
||||
{
|
||||
[ ${DEBUG} -ne 0 ] && echo -e "[ $(date "+%s.%N") ]${@:+ -- ${@}}"
|
||||
return 0
|
||||
} # ---------- end of function _debug_timestamp ----------
|
||||
@@ -0,0 +1,8 @@
|
||||
#
|
||||
#==========================================================================
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#==========================================================================
|
||||
#
|
||||
@@ -0,0 +1,3 @@
|
||||
|
||||
timestamp=$(date +"%Y%m%d-%H%M%S") # generate timestamp : YYYYMMDD-hhmmss
|
||||
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
|
||||
ScriptVersion="1.0"
|
||||
|
||||
#=== FUNCTION ================================================================
|
||||
# NAME: usage
|
||||
# DESCRIPTION: Display usage information.
|
||||
#===============================================================================
|
||||
function usage ()
|
||||
{
|
||||
cat <<- EOT
|
||||
|
||||
Usage : ${0##/*/} [options] [--]
|
||||
|
||||
Options:
|
||||
-h|help Display this message
|
||||
-v|version Display script version
|
||||
|
||||
EOT
|
||||
} # ---------- end of function usage ----------
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
# Handle command line arguments
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
while getopts ":hv" opt
|
||||
do
|
||||
case $opt in
|
||||
|
||||
h|help ) usage; exit 0 ;;
|
||||
|
||||
v|version ) echo "$0 -- Version $ScriptVersion"; exit 0 ;;
|
||||
|
||||
\? ) echo -e "\n Option does not exist : $OPTARG\n"
|
||||
usage; exit 1 ;;
|
||||
|
||||
esac # --- end of case ---
|
||||
done
|
||||
shift $(($OPTIND-1))
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
|
||||
infilename="" # input filename
|
||||
|
||||
exec 3<"$infilename"
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo -e "Could not link file descriptor with file '$infilename'\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while read line <&3 ; do
|
||||
echo -e "$line"
|
||||
done
|
||||
|
||||
exec 3<&- # close file descriptor
|
||||
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
|
||||
outfilename="" # output filename
|
||||
|
||||
exec 4>"$outfilename"
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo -e "Could not link file descriptor with file '$outfilename'\n"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo -e "text" >&4
|
||||
|
||||
exec 4>&- # close file descriptor
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
set -o nounset # treat unset variables as errors
|
||||
|
||||
#===============================================================================
|
||||
# GLOBAL DECLARATIONS
|
||||
#===============================================================================
|
||||
declare -rx SCRIPT=${0##*/} # the name of this script
|
||||
declare -rx mkdir='/bin/mkdir' # the mkdir(1) command
|
||||
|
||||
#===============================================================================
|
||||
# SANITY CHECKS
|
||||
#===============================================================================
|
||||
if [ -z "$BASH" ] ; then
|
||||
printf "$SCRIPT:$LINENO: run this script with the BASH shell\n" >&2
|
||||
exit 192
|
||||
fi
|
||||
|
||||
if [ ! -x "$mkdir" ] ; then
|
||||
printf "$SCRIPT:$LINENO: command '$mkdir' not available - aborting\n" >&2
|
||||
exit 192
|
||||
fi
|
||||
|
||||
#===============================================================================
|
||||
# MAIN SCRIPT
|
||||
#===============================================================================
|
||||
|
||||
#===============================================================================
|
||||
# STATISTICS / CLEANUP
|
||||
#===============================================================================
|
||||
exit 0
|
||||
@@ -0,0 +1,9 @@
|
||||
#-----------------------------------------------------------------------
|
||||
# set Bash prompts
|
||||
# PS4 shows the function name when execution is inside a function and
|
||||
# the xtrace option is set.
|
||||
#-----------------------------------------------------------------------
|
||||
export PS2='continue> '
|
||||
export PS3='choose: '
|
||||
export PS4='|${BASH_SOURCE} ${LINENO}${FUNCNAME[0]:+ ${FUNCNAME[0]}()}| '
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
"===============================================================================
|
||||
"
|
||||
" File: customization.gvimrc
|
||||
"
|
||||
" Description: suggestion for a personal configuration file ~/.gvimrc
|
||||
"
|
||||
" VIM Version: 7.0+
|
||||
" Author: Dr. Fritz Mehner (fgm), mehner.fritz@fh-swf.de
|
||||
" Organization: FH Südwestfalen, Iserlohn
|
||||
" Version: 1.0
|
||||
" Created: 18.05.2013 21:58
|
||||
" Revision: ---
|
||||
" License: Copyright (c) 2013, Dr. Fritz Mehner
|
||||
"===============================================================================
|
||||
"
|
||||
"===============================================================================
|
||||
" GENERAL SETTINGS
|
||||
"===============================================================================
|
||||
set cmdheight=2 " Make command line two lines high
|
||||
set mousehide " Hide the mouse when typing text
|
||||
|
||||
highlight Normal guibg=grey90
|
||||
highlight Cursor guibg=Blue guifg=NONE
|
||||
highlight lCursor guibg=Cyan guifg=NONE
|
||||
highlight NonText guibg=grey80
|
||||
highlight Constant gui=NONE guibg=grey95
|
||||
highlight Special gui=NONE guibg=grey95
|
||||
"
|
||||
let c_comment_strings=1 " highlight strings inside C comments
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Moving cursor to other windows
|
||||
"
|
||||
" shift down : change window focus to lower one (cyclic)
|
||||
" shift up : change window focus to upper one (cyclic)
|
||||
" shift left : change window focus to one on left
|
||||
" shift right : change window focus to one on right
|
||||
"-------------------------------------------------------------------------------
|
||||
nnoremap <s-down> <c-w>w
|
||||
nnoremap <s-up> <c-w>W
|
||||
nnoremap <s-left> <c-w>h
|
||||
nnoremap <s-right> <c-w>l
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" some additional hot keys
|
||||
"-------------------------------------------------------------------------------
|
||||
" S-F3 - call gvim file browser
|
||||
"-------------------------------------------------------------------------------
|
||||
noremap <silent> <s-F3> :silent browse confirm e<CR>
|
||||
inoremap <silent> <s-F3> <Esc>:silent browse confirm e<CR>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" toggle insert mode <--> 'normal mode with the <RightMouse>-key
|
||||
"-------------------------------------------------------------------------------
|
||||
"
|
||||
nnoremap <RightMouse> <Insert>
|
||||
inoremap <RightMouse> <ESC>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" use font with clearly distinguishable brackets : ()[]{}
|
||||
"-------------------------------------------------------------------------------
|
||||
"set guifont=Luxi\ Mono\ 14
|
||||
"
|
||||
@@ -0,0 +1,210 @@
|
||||
"===============================================================================
|
||||
"
|
||||
" File: customization.vimrc
|
||||
"
|
||||
" Description: suggestion for a personal configuration file ~/.vimrc
|
||||
"
|
||||
" VIM Version: 7.0+
|
||||
" Author: Dr. Fritz Mehner (fgm), mehner.fritz@fh-swf.de
|
||||
" Organization: FH Südwestfalen, Iserlohn
|
||||
" Version: 1.0
|
||||
" Created: 18.05.2013 21:59
|
||||
" Revision: ---
|
||||
" License: Copyright (c) 2013, Dr. Fritz Mehner
|
||||
"===============================================================================
|
||||
|
||||
"
|
||||
"===============================================================================
|
||||
" GENERAL SETTINGS
|
||||
"===============================================================================
|
||||
|
||||
"-------------------------------------------------------------------------------
|
||||
" Use Vim settings, rather then Vi settings.
|
||||
" This must be first, because it changes other options as a side effect.
|
||||
"-------------------------------------------------------------------------------
|
||||
set nocompatible
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Enable file type detection. Use the default filetype settings.
|
||||
" Also load indent files, to automatically do language-dependent indenting.
|
||||
"-------------------------------------------------------------------------------
|
||||
filetype plugin on
|
||||
filetype indent on
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Switch syntax highlighting on.
|
||||
"-------------------------------------------------------------------------------
|
||||
syntax on
|
||||
"
|
||||
" Platform specific items:
|
||||
" - central backup directory (has to be created)
|
||||
" - default dictionary
|
||||
" Uncomment your choice.
|
||||
if has("win16") || has("win32") || has("win64") ||
|
||||
\ has("win95") || has("win32unix")
|
||||
"
|
||||
" runtime mswin.vim
|
||||
" set backupdir =$VIM\vimfiles\backupdir
|
||||
" set dictionary=$VIM\vimfiles\wordlists/german.list
|
||||
else
|
||||
" set backupdir =$HOME/.vim.backupdir
|
||||
" set dictionary=$HOME/.vim/wordlists/german.list
|
||||
endif
|
||||
"
|
||||
" Using a backupdir under UNIX/Linux: you may want to include a line similar to
|
||||
" find $HOME/.vim.backupdir -name "*" -type f -mtime +60 -exec rm -f {} \;
|
||||
" in one of your shell startup files (e.g. $HOME/.profile)
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Various settings
|
||||
"-------------------------------------------------------------------------------
|
||||
set autoindent " copy indent from current line
|
||||
set autoread " read open files again when changed outside Vim
|
||||
set autowrite " write a modified buffer on each :next , ...
|
||||
set backspace=indent,eol,start " backspacing over everything in insert mode
|
||||
set backup " keep a backup file
|
||||
set browsedir=current " which directory to use for the file browser
|
||||
set complete+=k " scan the files given with the 'dictionary' option
|
||||
set history=50 " keep 50 lines of command line history
|
||||
set hlsearch " highlight the last used search pattern
|
||||
set incsearch " do incremental searching
|
||||
set listchars=tab:>.,eol:\$ " strings to use in 'list' mode
|
||||
set mouse=a " enable the use of the mouse
|
||||
set nowrap " do not wrap lines
|
||||
set popt=left:8pc,right:3pc " print options
|
||||
set ruler " show the cursor position all the time
|
||||
set shiftwidth=2 " number of spaces to use for each step of indent
|
||||
set showcmd " display incomplete commands
|
||||
set smartindent " smart autoindenting when starting a new line
|
||||
set tabstop=2 " number of spaces that a <Tab> counts for
|
||||
set visualbell " visual bell instead of beeping
|
||||
set wildignore=*.bak,*.o,*.e,*~ " wildmenu: ignore these extensions
|
||||
set wildmenu " command-line completion in an enhanced mode
|
||||
"
|
||||
"===================================================================================
|
||||
" BUFFERS, WINDOWS
|
||||
"===================================================================================
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" The current directory is the directory of the file in the current window.
|
||||
"-------------------------------------------------------------------------------
|
||||
if has("autocmd")
|
||||
autocmd BufNewFile,BufRead * :lchdir %:p:h
|
||||
endif
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" close window (conflicts with the KDE setting for calling the process manager)
|
||||
"-------------------------------------------------------------------------------
|
||||
noremap <C-Esc> :close<CR>
|
||||
inoremap <C-Esc> <C-C>:close<CR>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Fast switching between buffers
|
||||
" The current buffer will be saved before switching to the next one.
|
||||
" Choose :bprevious or :bnext
|
||||
"-------------------------------------------------------------------------------
|
||||
noremap <silent> <s-tab> :if &modifiable && !&readonly &&
|
||||
\ &modified <CR> :write<CR> :endif<CR>:bprevious<CR>
|
||||
inoremap <silent> <s-tab> <C-C>:if &modifiable && !&readonly &&
|
||||
\ &modified <CR> :write<CR> :endif<CR>:bprevious<CR>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" Leave the editor with Ctrl-q (KDE): Write all changed buffers and exit Vim
|
||||
"-------------------------------------------------------------------------------
|
||||
nnoremap <C-q> :wqall<CR>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" When editing a file, always jump to the last known cursor position.
|
||||
" Don't do it when the position is invalid or when inside an event handler
|
||||
" (happens when dropping a file on gvim).
|
||||
"-------------------------------------------------------------------------------
|
||||
if has("autocmd")
|
||||
autocmd BufReadPost *
|
||||
\ if line("'\"") > 0 && line("'\"") <= line("$") |
|
||||
\ exe "normal! g`\"" |
|
||||
\ endif
|
||||
endif " has("autocmd")
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" some additional hot keys
|
||||
"-------------------------------------------------------------------------------
|
||||
" F2 - write file without confirmation
|
||||
" F3 - call file explorer Ex
|
||||
" F4 - show tag under curser in the preview window (tagfile must exist!)
|
||||
" F5 - open quickfix error window
|
||||
" F6 - close quickfix error window
|
||||
" F7 - display previous error
|
||||
" F8 - display next error
|
||||
"-------------------------------------------------------------------------------
|
||||
"
|
||||
noremap <silent> <F2> :write<CR>
|
||||
noremap <silent> <F3> :Explore<CR>
|
||||
nnoremap <silent> <F4> :exe ":ptag ".expand("<cword>")<CR>
|
||||
noremap <silent> <F5> :copen<CR>
|
||||
noremap <silent> <F6> :cclose<CR>
|
||||
noremap <silent> <F7> :cp<CR>
|
||||
noremap <silent> <F8> :cn<CR>
|
||||
"
|
||||
inoremap <silent> <F2> <Esc>:write<CR>
|
||||
inoremap <silent> <F3> <Esc>:Explore<CR>
|
||||
inoremap <silent> <F4> <Esc>:exe ":ptag ".expand("<cword>")<CR>
|
||||
inoremap <silent> <F5> <Esc>:copen<CR>
|
||||
inoremap <silent> <F6> <Esc>:cclose<CR>
|
||||
inoremap <silent> <F7> <Esc>:cp<CR>
|
||||
inoremap <silent> <F8> <Esc>:cn<CR>
|
||||
"-------------------------------------------------------------------------------
|
||||
" autocomplete parenthesis, brackets and braces
|
||||
"-------------------------------------------------------------------------------
|
||||
inoremap ( ()<Left>
|
||||
inoremap [ []<Left>
|
||||
inoremap { {}<Left>
|
||||
"
|
||||
vnoremap ( s()<Esc>P
|
||||
vnoremap [ s[]<Esc>P
|
||||
vnoremap { s{}<Esc>P
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" autocomplete quotes
|
||||
"-------------------------------------------------------------------------------
|
||||
vnoremap ' s''<Esc>P<Right>
|
||||
vnoremap " s""<Esc>P<Right>
|
||||
vnoremap ` s``<Esc>P<Right>
|
||||
"
|
||||
inoremap ' '<Esc>:call QuoteInsertionWrapper("'")<CR>a
|
||||
inoremap " "<Esc>:call QuoteInsertionWrapper('"')<CR>a
|
||||
inoremap ` `<Esc>:call QuoteInsertionWrapper('`')<CR>a
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" function QuoteInsertionWrapper {{{3
|
||||
"
|
||||
" Add a second quote only if the left and the right character are not keyword
|
||||
" characters and the right character is not the same quote.
|
||||
"-------------------------------------------------------------------------------
|
||||
function! QuoteInsertionWrapper (quote)
|
||||
let col = col('.')
|
||||
let line = getline('.')
|
||||
if ( line[col-2] =~ '\k' )
|
||||
\ || ( line[col ] =~ '\k' )
|
||||
\ || ( line[col-2] =~ a:quote )
|
||||
\ || ( line[col ] =~ a:quote )
|
||||
return a:quote
|
||||
else
|
||||
return a:quote.a:quote."\<Left>"
|
||||
endif
|
||||
endfunction
|
||||
"
|
||||
"===============================================================================
|
||||
" VARIOUS PLUGIN CONFIGURATIONS
|
||||
"===============================================================================
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" plugin bash-support.vim
|
||||
"-------------------------------------------------------------------------------
|
||||
" --empty --
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" taglist.vim : toggle the taglist window
|
||||
"-------------------------------------------------------------------------------
|
||||
noremap <silent> <F11> <Esc><Esc>:Tlist<CR>
|
||||
inoremap <silent> <F11> <Esc><Esc>:Tlist<CR>
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
§ =============================================================
|
||||
§ User Macros
|
||||
§ =============================================================
|
||||
|
||||
SetMacro( 'AUTHOR', 'YOUR NAME' )
|
||||
SetMacro( 'AUTHORREF', '' )
|
||||
SetMacro( 'COMPANY', '' )
|
||||
SetMacro( 'COPYRIGHT', 'Copyright (c) |YEAR|, |AUTHOR|' )
|
||||
SetMacro( 'EMAIL', '' )
|
||||
SetMacro( 'LICENSE', 'GNU General Public License' )
|
||||
SetMacro( 'ORGANIZATION','' )
|
||||
|
||||
§ =============================================================
|
||||
§ File Includes and Shortcuts
|
||||
§ =============================================================
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
"===============================================================================
|
||||
"
|
||||
" File: sh.vim
|
||||
"
|
||||
" Description: Additonal maps for bash-support (version 4.0+)
|
||||
"
|
||||
" VIM Version: 7.0+
|
||||
" Author: Dr. Fritz Mehner (fgm), mehner.fritz@fh-swf.de
|
||||
" Organization: FH Südwestfalen, Iserlohn
|
||||
" Version: 1.0
|
||||
" Created: 20.05.2013 17:20
|
||||
" Revision: ---
|
||||
" License: Copyright (c) 2013, Dr. Fritz Mehner
|
||||
"===============================================================================
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" additional mapping : single quotes around a Word (non-whitespaces)
|
||||
" masks the normal mode command '' (jump to the position
|
||||
" before the latest jump)
|
||||
" additional mapping : double quotes around a Word (non-whitespaces)
|
||||
"-------------------------------------------------------------------------------
|
||||
nnoremap <buffer> '' ciW''<Esc>P
|
||||
nnoremap <buffer> "" ciW""<Esc>P
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" generate tests
|
||||
" additional mapping : \t1 expands to [ -<CURSOR> ]
|
||||
" additional mapping : \t2 expands to [ <CURSOR> - ]
|
||||
"-------------------------------------------------------------------------------
|
||||
nnoremap <buffer> <silent> <LocalLeader>t1 a[ - ]<Left><Left><Left>
|
||||
inoremap <buffer> <silent> <LocalLeader>t1 [ - ]<Left><Left><Left>
|
||||
"
|
||||
nnoremap <buffer> <silent> <LocalLeader>t2 a[ - ]<Left><Left><Left><Left><Left>
|
||||
inoremap <buffer> <silent> <LocalLeader>t2 [ - ]<Left><Left><Left><Left><Left>
|
||||
"
|
||||
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
#===============================================================================
|
||||
# FILE: wrapper.sh
|
||||
# USAGE: ./wrapper.sh scriptname [cmd-line-args]
|
||||
# DESCRIPTION: Wraps the execution of a programm or script.
|
||||
# Use with xterm: xterm -e wrapper.sh scriptname cmd-line-args
|
||||
# This script is used by the Vim plugin bash-support.vim
|
||||
# OPTIONS: ---
|
||||
# REQUIREMENTS: ---
|
||||
# BUGS: ---
|
||||
# NOTES: ---
|
||||
# AUTHOR: Dr.-Ing. Fritz Mehner (fgm), mehner.fritz@fh-swf.de
|
||||
# COMPANY: Fachhochschule Südwestfalen, Iserlohn
|
||||
# CREATED: 23.11.2004 18:04:01 CET
|
||||
# REVISION: ---
|
||||
#===============================================================================
|
||||
|
||||
scriptname="${1}" # name of the script to execute
|
||||
returncode=0 # default return code
|
||||
|
||||
if [ ${#} -ge 1 ] ; then
|
||||
if [ -x "$scriptname" ] ; then # start an executable script?
|
||||
"${@}"
|
||||
else
|
||||
$SHELL "${@}" # start a script which is not executable
|
||||
fi
|
||||
returncode=$?
|
||||
[ $returncode -ne 0 ] && printf "'${@}' returned ${returncode}\n"
|
||||
else
|
||||
printf "\n!! ${0} : no argument(s) !!\n"
|
||||
fi
|
||||
|
||||
read -p "... press return key ... " dummy
|
||||
exit $returncode
|
||||
@@ -0,0 +1,42 @@
|
||||
§ =============================================================
|
||||
§ User Macros
|
||||
§ =============================================================
|
||||
|
||||
SetMacro( 'AUTHOR', 'Marcin Woźniak' )
|
||||
SetMacro( 'AUTHORREF', '' )
|
||||
SetMacro( 'COMPANY', 'Cognifide Polska' )
|
||||
SetMacro( 'COPYRIGHT', '' )
|
||||
SetMacro( 'EMAIL', 'marcin.wozniak@cognifide.com' )
|
||||
SetMacro( 'LICENSE', '' )
|
||||
SetMacro( 'ORGANIZATION','' )
|
||||
|
||||
SetFormat( 'DATE', '%x' )
|
||||
SetFormat( 'TIME', '%H:%M' )
|
||||
SetFormat( 'YEAR', '%Y' )
|
||||
|
||||
SetStyle( 'default' )
|
||||
|
||||
§ =============================================================
|
||||
§ File Includes and Shortcuts
|
||||
§ =============================================================
|
||||
|
||||
§ :TODO:14.07.13 12:50:WM: files "paramsub.templates" and "io-redirection.templates": maps, shortcuts? sort alphabetically?
|
||||
|
||||
MenuShortcut( 'Comments', 'c' )
|
||||
MenuShortcut( 'Statements', 's' )
|
||||
MenuShortcut( 'Tests', 't' )
|
||||
MenuShortcut( 'ParamSub', 'p' )
|
||||
MenuShortcut( 'PatternMatching', 'p' )
|
||||
MenuShortcut( 'IO-Redir', 'i' )
|
||||
|
||||
IncludeFile( 'comments.templates' )
|
||||
IncludeFile( 'statements.templates' )
|
||||
IncludeFile( 'tests.templates' )
|
||||
IncludeFile( 'paramsub.templates' )
|
||||
IncludeFile( 'specialparams.templates' )
|
||||
IncludeFile( 'environment.templates' )
|
||||
IncludeFile( 'builtins.templates' )
|
||||
IncludeFile( 'set.templates' )
|
||||
IncludeFile( 'shelloptions.templates' )
|
||||
IncludeFile( 'io-redirection.templates' )
|
||||
IncludeFile( 'patternmatching.templates' )
|
||||
@@ -0,0 +1,70 @@
|
||||
§ =============================================================
|
||||
§ Builtins
|
||||
§ =============================================================
|
||||
|
||||
== LIST: builtins == list ==
|
||||
'alias',
|
||||
'bg',
|
||||
'bind',
|
||||
'break',
|
||||
'builtin',
|
||||
'caller',
|
||||
'cd',
|
||||
'command',
|
||||
'compgen',
|
||||
'complete',
|
||||
'continue',
|
||||
'compopt',
|
||||
'declare',
|
||||
'dirs',
|
||||
'disown',
|
||||
'echo',
|
||||
'enable',
|
||||
'eval',
|
||||
'exec',
|
||||
'exit',
|
||||
'export',
|
||||
'false',
|
||||
'fc',
|
||||
'fg',
|
||||
'getopts',
|
||||
'hash',
|
||||
'help',
|
||||
'history',
|
||||
'jobs',
|
||||
'kill',
|
||||
'let',
|
||||
'local',
|
||||
'logout',
|
||||
'mapfile',
|
||||
'popd',
|
||||
'printf',
|
||||
'pushd',
|
||||
'pwd',
|
||||
'read',
|
||||
'readarray',
|
||||
'readonly',
|
||||
'return',
|
||||
'set',
|
||||
'shift',
|
||||
'shopt',
|
||||
'source',
|
||||
'suspend',
|
||||
'test',
|
||||
'times',
|
||||
'trap',
|
||||
'true',
|
||||
'type',
|
||||
'typeset',
|
||||
'ulimit',
|
||||
'umask',
|
||||
'unalias',
|
||||
'unset',
|
||||
'wait',
|
||||
== ENDLIST ==
|
||||
|
||||
== Builtins == expandmenu, insert, map:bbu, sc:b ==
|
||||
|PickList( 'Builtins', 'builtins' )|
|
||||
|PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
@@ -0,0 +1,142 @@
|
||||
§ =============================================================
|
||||
§ Comments
|
||||
§ =============================================================
|
||||
|
||||
== Comments.end-of-line comment == nomenu, append ==
|
||||
# <CURSOR>
|
||||
== Comments.frame == map:cfr, sc:r ==
|
||||
#-------------------------------------------------------------------------------
|
||||
# <CURSOR>
|
||||
#-------------------------------------------------------------------------------
|
||||
== Comments.function == map:cfu, sc:f ==
|
||||
#--- FUNCTION ----------------------------------------------------------------
|
||||
# NAME: |?FUNCTION_NAME|
|
||||
# DESCRIPTION: <CURSOR>
|
||||
# PARAMETERS:
|
||||
# RETURNS:
|
||||
#-------------------------------------------------------------------------------
|
||||
== Comments.file header == start, map:ch ==
|
||||
#!/bin/bash -
|
||||
#===============================================================================
|
||||
#
|
||||
# FILE: |FILENAME|
|
||||
#
|
||||
# USAGE: ./|FILENAME|
|
||||
#
|
||||
# DESCRIPTION:
|
||||
#
|
||||
# OPTIONS: ---
|
||||
# REQUIREMENTS: ---
|
||||
# BUGS: ---
|
||||
# NOTES: ---
|
||||
# AUTHOR: |AUTHOR| , |EMAIL|
|
||||
# COMPANY: |COMPANY|
|
||||
# CREATED: |DATE| |TIME|
|
||||
# REVISION: ---
|
||||
#===============================================================================
|
||||
|
||||
set -o nounset # Treat unset variables as an error
|
||||
|
||||
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}" )" && pwd)/"
|
||||
#source $DIR/settings.sh
|
||||
|
||||
#####################
|
||||
# SETTINGS FILE
|
||||
EMAILSERVER=""
|
||||
EMAILFROM=""
|
||||
EMAILADMIN=""
|
||||
ERRORTITLE=Error-$TITLE
|
||||
#
|
||||
#####################
|
||||
|
||||
LOG="$DIR/log"
|
||||
LOG_FILE="$LOG/log-$(date -I).log"
|
||||
|
||||
function timestamp(){
|
||||
echo "[+] "$(date +'%F %T')" [INFO] $@"
|
||||
}
|
||||
|
||||
function err() {
|
||||
echo "[-] "$(date +'%F %T')" [ERROR] $@" >&2
|
||||
}
|
||||
|
||||
function command_start(){
|
||||
timestamp "Command $1 has been started."
|
||||
if ! $1 ; then
|
||||
err "Command $1 went wrong."
|
||||
sendmailerr
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
function removelogs(){
|
||||
find $LOG -mindepth 1 -mtime +365 -delete
|
||||
}
|
||||
|
||||
function sendmailerr (){
|
||||
echo -e "SERVER-IP: :$(ifconfig | awk '/inet /{print $2}' | sed '/127.0.0.1/d'| tr '\n' ' ')\nSCRIPTNAME: $(basename "$0")" | mailx -v -S smtp=$EMAILSERVER -r $EMAILFROM -s "$ERRORTITLE" -a $LOG_FILE $EMAILADMIN
|
||||
}
|
||||
|
||||
function main(){
|
||||
timestamp "Script has been started"
|
||||
timestamp "Everything looks OK ;-)"
|
||||
}
|
||||
|
||||
main >>$LOG_FILE 2>&1
|
||||
|
||||
|
||||
<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
§ -------------------------------------------------------------
|
||||
|
||||
== Comments.date == insert, map:cd, sc:d ==
|
||||
|DATE|<CURSOR>
|
||||
== Comments.date+time == insert, map:ct, sc:t ==
|
||||
|DATE| |TIME|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
§ -------------------------------------------------------------
|
||||
§ Keywords, Special and Macros
|
||||
§ -------------------------------------------------------------
|
||||
|
||||
== LIST: comments_sections == hash ==
|
||||
'GLOBAL DECLARATIONS' : 'GLOBAL DECLARATIONS',
|
||||
'COMMAND LINE PROCESSING' : 'COMMAND LINE PROCESSING',
|
||||
'SANITY CHECKS' : 'SANITY CHECKS',
|
||||
'FUNCTION DEFINITIONS' : 'FUNCTION DEFINITIONS',
|
||||
'TRAPS' : 'TRAPS',
|
||||
'MAIN SCRIPT' : 'MAIN SCRIPT',
|
||||
'STATISTICS AND CLEAN-UP' : 'STATISTICS AND CLEAN-UP',
|
||||
== LIST: comments_keywords == hash ==
|
||||
'bug' : ':BUG:|DATE| |TIME|:|AUTHORREF|: <CURSOR>',
|
||||
'todo' : ':TODO:|DATE| |TIME|:|AUTHORREF|: <CURSOR>',
|
||||
'tricky' : ':TRICKY:|DATE| |TIME|:|AUTHORREF|: <CURSOR>',
|
||||
'warning' : ':WARNING:|DATE| |TIME|:|AUTHORREF|: <CURSOR>',
|
||||
'workaround' : ':WORKAROUND:|DATE| |TIME|:|AUTHORREF|: <CURSOR>',
|
||||
'new keyword' : ':<CURSOR>:|DATE| |TIME|:|AUTHORREF|: {+COMMENT+}',
|
||||
== LIST: comments_macros == hash ==
|
||||
'AUTHOR' : '|AUTHOR|',
|
||||
'AUTHORREF' : '|AUTHORREF|',
|
||||
'COMPANY' : '|COMPANY|',
|
||||
'COPYRIGHT' : '|COPYRIGHT|',
|
||||
'EMAIL' : '|EMAIL|',
|
||||
'ORGANIZATION' : '|ORGANIZATION|',
|
||||
== ENDLIST ==
|
||||
|
||||
§ -------------------------------------------------------------
|
||||
|
||||
== Comments.script sections == expandmenu, map:css, sc:s ==
|
||||
|PickList( 'script sections', 'comments_sections' )|
|
||||
#===============================================================================
|
||||
# |PICK|
|
||||
#===============================================================================
|
||||
== Comments.keyword comments == expandmenu, append, map:ckc, sc:k ==
|
||||
|PickList( 'keyword comment', 'comments_keywords' )|
|
||||
# |PICK|
|
||||
== Comments.macros == expandmenu, insert, map:cma, sc:m ==
|
||||
|PickList( 'macro', 'comments_macros' )|
|
||||
|PICK|
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== SEP: Comments.sep1 ==
|
||||
@@ -0,0 +1,100 @@
|
||||
§ =============================================================
|
||||
§ Environment
|
||||
§ =============================================================
|
||||
|
||||
== LIST: environment == list ==
|
||||
'BASH',
|
||||
'BASHOPTS',
|
||||
'BASHPID',
|
||||
'BASH_ALIASES',
|
||||
'BASH_ARGC',
|
||||
'BASH_ARGV',
|
||||
'BASH_CMDS',
|
||||
'BASH_COMMAND',
|
||||
'BASH_ENV',
|
||||
'BASH_EXECUTION_STRING',
|
||||
'BASH_LINENO',
|
||||
'BASH_REMATCH',
|
||||
'BASH_SOURCE',
|
||||
'BASH_SUBSHELL',
|
||||
'BASH_VERSINFO',
|
||||
'BASH_VERSION',
|
||||
'BASH_XTRACEFD',
|
||||
'CDPATH',
|
||||
'COLUMNS',
|
||||
'COMPREPLY',
|
||||
'COMP_CWORD',
|
||||
'COMP_KEY',
|
||||
'COMP_LINE',
|
||||
'COMP_POINT',
|
||||
'COMP_TYPE',
|
||||
'COMP_WORDBREAKS',
|
||||
'COMP_WORDS',
|
||||
'DIRSTACK',
|
||||
'EMAC&S',
|
||||
'EUID',
|
||||
'FCEDIT',
|
||||
'FIGNORE',
|
||||
'FUNCNAME',
|
||||
'FUNCNEST',
|
||||
'GLOBIGNORE',
|
||||
'GROUPS',
|
||||
'HISTCMD',
|
||||
'HISTCONTROL',
|
||||
'HISTFILE',
|
||||
'HISTFILESIZE',
|
||||
'HISTIGNORE',
|
||||
'HISTSIZE',
|
||||
'HISTTIMEFORMAT',
|
||||
'HOME',
|
||||
'HOSTFILE',
|
||||
'HOSTNAME',
|
||||
'HOSTTYPE',
|
||||
'IFS',
|
||||
'IGNOREEOF',
|
||||
'INPUTRC',
|
||||
'LANG',
|
||||
'LC_ALL',
|
||||
'LC_COLLATE',
|
||||
'LC_CTYPE',
|
||||
'LC_MESSAGES',
|
||||
'LC_NUMERIC',
|
||||
'LINENO',
|
||||
'LINES',
|
||||
'MACHTYPE',
|
||||
'MAIL',
|
||||
'MAILCHECK',
|
||||
'MAILPATH',
|
||||
'OLDPWD',
|
||||
'OPTARG',
|
||||
'OPTERR',
|
||||
'OPTIND',
|
||||
'OSTYPE',
|
||||
'PATH',
|
||||
'PIPESTATUS',
|
||||
'POSIXLY_CORRECT',
|
||||
'PPID',
|
||||
'PROMPT_COMMAND',
|
||||
'PROMPT_DIRTRIM',
|
||||
'PS1',
|
||||
'PS2',
|
||||
'PS3',
|
||||
'PS4',
|
||||
'PWD',
|
||||
'RANDOM',
|
||||
'REPLY',
|
||||
'SECONDS',
|
||||
'SHELL',
|
||||
'SHELLOPTS',
|
||||
'SHLVL',
|
||||
'TIMEFORMAT',
|
||||
'TMOUT',
|
||||
'TMPDIR',
|
||||
'UID',
|
||||
== ENDLIST ==
|
||||
|
||||
== Environment == expandmenu, insert, map:ben, sc:e ==
|
||||
|PickList( 'Environment', 'environment' )|
|
||||
|PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
§ =============================================================
|
||||
§ IO Redirection
|
||||
§ =============================================================
|
||||
|
||||
== LIST: IORedirection == hash ==
|
||||
'append STDOUT and STDERR &>>': ' &>> <CURSOR>',
|
||||
'close input from file descr n n<&-': ' <CURSOR><&- ',
|
||||
'close output from file descr n n>&-': ' <CURSOR>>&- ',
|
||||
'close STDIN <&-': ' <&- <CURSOR>',
|
||||
'close STDOUT >&-': ' >&- <CURSOR>',
|
||||
'direct file descr n to file, append n>>' : ' <CURSOR>>> ',
|
||||
'direct file descr n to file n>' : ' <CURSOR>> ',
|
||||
'direct STDOUT and STDERR to file &>' : ' &> <CURSOR>',
|
||||
'direct STDOUT to file, append >>' : ' >> <CURSOR>',
|
||||
'direct STDOUT to file >' : ' > <CURSOR>',
|
||||
'direct STDOUT to STDERR >&2' : ' >&2<CURSOR>',
|
||||
'duplicate STDIN from file descr n n<&' : ' <<CURSOR>& ',
|
||||
'duplicate STDOUT to file descr n n>&' : ' ><CURSOR>& ',
|
||||
'take file descr n from file n<' : ' <CURSOR>< ',
|
||||
'take STDIN from file <' : ' < <CURSOR>',
|
||||
== ENDLIST ==
|
||||
|
||||
== IO-Redir.redir == expandmenu, insert, sc:r, map:ior ==
|
||||
|PickList( 'IO-Redir', 'IORedirection' )|
|
||||
|PICK|
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== IO-Redir.here-document == insert, sc:h, map:ioh ==
|
||||
<<-EOF
|
||||
<SPLIT><CURSOR>
|
||||
EOF
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,33 @@
|
||||
§ =============================================================
|
||||
§ Parameter Substitution
|
||||
§ =============================================================
|
||||
|
||||
== LIST: ParameterSubstitution == hash ==
|
||||
'all lower to upper ${ ^^ }' : '${<CURSOR>^^<+pattern+>}',
|
||||
'all upper to lower ${ ,, }' : '${<CURSOR>,,<+pattern+>}',
|
||||
'assign default value ${ := }' : '${<CURSOR>:=<+word+>}',
|
||||
'display error ${ :? }' : '${<CURSOR>:?<+word+>}',
|
||||
'first lower to upper ${ ^ }' : '${<CURSOR>^<+pattern+>}',
|
||||
'first upper to lower ${ , }' : '${<CURSOR>,<+pattern+>}',
|
||||
'indirect parameter expansion ${! }' : '${!<CURSOR>}',
|
||||
'names matching prefix ${! *}' : '${!<CURSOR>*}',
|
||||
'parameter length ${# }' : '${#<CURSOR>}',
|
||||
'pattern substitution all ${ // / }' : '${<CURSOR>//<+pattern+>/<+string+>}',
|
||||
'pattern substitution begin ${ /# / }' : '${<CURSOR>/#<+pattern+>/<+string+>}',
|
||||
'pattern substitution ${ / / }' : '${<CURSOR>/<+pattern+>/<+string+>}',
|
||||
'pattern substitution end ${ /% / }' : '${<CURSOR>/%<+pattern+>/<+string+>}',
|
||||
'remove all matching prefix pattern ${ ## }' : '${<CURSOR>##<+word+>}',
|
||||
'remove all matching suffix pattern ${ %% }' : '${<CURSOR>%%<+word+>}',
|
||||
'remove matching prefix pattern ${ # }' : '${<CURSOR>#<+word+>}',
|
||||
'remove matching suffix pattern ${ % }' : '${<CURSOR>%<+word+>}',
|
||||
'substitution ${ }' : '${<SPLIT><CURSOR>}',
|
||||
'substring expansion ${ : : }' : '${<CURSOR>:<+offset+>:<+length+>}',
|
||||
'use alternate value ${ :+ }' : '${<CURSOR>:+<+word+>}',
|
||||
'use default value ${ :- }' : '${<CURSOR>:-<+word+>}',
|
||||
== ENDLIST ==
|
||||
|
||||
== ParamSub == expandmenu, insert, sc:p, map:bps ==
|
||||
|PickList( 'Parameter Substitution', 'ParameterSubstitution' )|
|
||||
|PICK|
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
§ =============================================================
|
||||
§ RegExp
|
||||
§ =============================================================
|
||||
|
||||
== PatternMatching.zero or one == insert, map:pzo, sc:z ==
|
||||
?(<SPLIT><CURSOR>|)
|
||||
== PatternMatching.zero or more == insert, map:pzm, sc:z ==
|
||||
*(<SPLIT><CURSOR>|)
|
||||
== PatternMatching.one or more == insert, map:pom, sc:o ==
|
||||
+(<SPLIT><CURSOR>|)
|
||||
== PatternMatching.exactly one == insert, map:peo, sc:e ==
|
||||
@(<SPLIT><CURSOR>|)
|
||||
== PatternMatching.anything except == insert, map:pae, sc:a ==
|
||||
!(<SPLIT><CURSOR>|)
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== SEP: PatternMatching.sep1 ==
|
||||
|
||||
== LIST: POSIX_CharClasses == list ==
|
||||
'alnum',
|
||||
'alpha',
|
||||
'ascii',
|
||||
'blank',
|
||||
'cntrl',
|
||||
'digit',
|
||||
'graph',
|
||||
'lower',
|
||||
'print',
|
||||
'punct',
|
||||
'space',
|
||||
'upper',
|
||||
'word',
|
||||
'xdigit',
|
||||
== ENDLIST ==
|
||||
|
||||
== PatternMatching.POSIX classes == expandmenu, insert, sc:p, map:ppc ==
|
||||
|PickList( 'POSIX char. classes', 'POSIX_CharClasses' )|
|
||||
[:|PICK|:]<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: BashRematch == list ==
|
||||
'${BASH_REMATCH[0]}',
|
||||
'${BASH_REMATCH[1]}',
|
||||
'${BASH_REMATCH[2]}',
|
||||
'${BASH_REMATCH[3]}',
|
||||
== ENDLIST ==
|
||||
|
||||
== PatternMatching.BASH_REMATCH == expandmenu, insert, sc:b, map:pbr ==
|
||||
|PickList( 'BASH_REMATCH', 'BashRematch' )|
|
||||
|PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,51 @@
|
||||
§ =============================================================
|
||||
§ RegExp
|
||||
§ =============================================================
|
||||
|
||||
== Regexp.zero or one == insert, map:xzo, sc:z ==
|
||||
?(<SPLIT><CURSOR>|)
|
||||
== Regexp.zero or more == insert, map:xzm, sc:z ==
|
||||
*(<SPLIT><CURSOR>|)
|
||||
== Regexp.one or more == insert, map:xom, sc:o ==
|
||||
+(<SPLIT><CURSOR>|)
|
||||
== Regexp.exactly one == insert, map:xeo, sc:e ==
|
||||
@(<SPLIT><CURSOR>|)
|
||||
== Regexp.anything except == insert, map:xae, sc:a ==
|
||||
!(<SPLIT><CURSOR>|)
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== SEP: Regexp.sep1 ==
|
||||
|
||||
== LIST: POSIX_CharClasses == list ==
|
||||
'alnum',
|
||||
'alpha',
|
||||
'ascii',
|
||||
'blank',
|
||||
'cntrl',
|
||||
'digit',
|
||||
'graph',
|
||||
'lower',
|
||||
'print',
|
||||
'punct',
|
||||
'space',
|
||||
'upper',
|
||||
'word',
|
||||
'xdigit',
|
||||
== ENDLIST ==
|
||||
|
||||
== Regexp.POSIX classes == expandmenu, insert, sc:p, map:xpc ==
|
||||
|PickList( 'POSIX char. classes', 'POSIX_CharClasses' )|
|
||||
[:|PICK|:]<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: BashRematch == list ==
|
||||
'${BASH_REMATCH[0]}',
|
||||
'${BASH_REMATCH[1]}',
|
||||
'${BASH_REMATCH[2]}',
|
||||
'${BASH_REMATCH[3]}',
|
||||
== ENDLIST ==
|
||||
|
||||
== Regexp.BASH_REMATCH == expandmenu, insert, sc:b, map:xbr ==
|
||||
|PickList( 'BASH_REMATCH', 'BashRematch' )|
|
||||
|PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,36 @@
|
||||
§ =============================================================
|
||||
§ Set
|
||||
§ =============================================================
|
||||
|
||||
== LIST: set == list ==
|
||||
'allexport',
|
||||
'braceexpand',
|
||||
'emacs',
|
||||
'errexit',
|
||||
'errtrace',
|
||||
'functrace',
|
||||
'hashall',
|
||||
'histexpand',
|
||||
'history',
|
||||
'ignoreeof',
|
||||
'keyword',
|
||||
'monitor',
|
||||
'noclobber',
|
||||
'noexec',
|
||||
'noglob',
|
||||
'notify',
|
||||
'nounset',
|
||||
'onecmd',
|
||||
'physical',
|
||||
'pipefail',
|
||||
'posix',
|
||||
'privileged',
|
||||
'verbose',
|
||||
'vi',
|
||||
'xtrace',
|
||||
== ENDLIST ==
|
||||
|
||||
== Set == expandmenu, map:bse, sc:s ==
|
||||
|PickList( 'set option', 'set' )|
|
||||
set -o |PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,54 @@
|
||||
§ =============================================================
|
||||
§ Shell Options
|
||||
§ =============================================================
|
||||
|
||||
== LIST: shopt == list ==
|
||||
'autocd',
|
||||
'cdable_vars',
|
||||
'cdspell',
|
||||
'checkhash',
|
||||
'checkjobs',
|
||||
'checkwinsize',
|
||||
'cmdhist',
|
||||
'compat31',
|
||||
'compat32',
|
||||
'compat40',
|
||||
'compat41',
|
||||
'dirspell',
|
||||
'direxpand',
|
||||
'dotglob',
|
||||
'execfail',
|
||||
'expand_aliases',
|
||||
'extdebug',
|
||||
'extglob',
|
||||
'extquote',
|
||||
'failglob',
|
||||
'force_fignore',
|
||||
'globstar',
|
||||
'gnu_errfmt',
|
||||
'histappend',
|
||||
'histreedit',
|
||||
'histverify',
|
||||
'hostcomplete',
|
||||
'huponexit',
|
||||
'interactive_comments',
|
||||
'lastpipe',
|
||||
'lithist',
|
||||
'login_shell',
|
||||
'mailwarn',
|
||||
'no_empty_cmd_completion',
|
||||
'nocaseglob',
|
||||
'nocasematch',
|
||||
'nullglob',
|
||||
'progcomp',
|
||||
'promptvars',
|
||||
'restricted_shell',
|
||||
'shift_verbose',
|
||||
'sourcepath',
|
||||
'xpg_echo',
|
||||
== ENDLIST ==
|
||||
|
||||
== Shopts == expandmenu, insert, map:bso, sc:o ==
|
||||
|PickList( 'Shopts', 'shopt' )|
|
||||
shopt -s |PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,21 @@
|
||||
§ =============================================================
|
||||
§ Special Parameters
|
||||
§ =============================================================
|
||||
|
||||
== LIST: SpecialParameters == hash ==
|
||||
'number of posit. param., ${#}' : '${#}',
|
||||
'all posit. param. (quoted spaces), ${*}' : '${*}',
|
||||
'all posit. param. (unquoted spaces), ${@}' : '${@}',
|
||||
'number of posit. parameters, ${#@}' : '${#@}',
|
||||
'return code of last command, ${?}' : '${?}',
|
||||
'PID of this shell, ${$}' : '${$}',
|
||||
'flags set, ${-}' : '${-}',
|
||||
'last argument of prev. command, ${_}' : '${_}',
|
||||
'PID of last background command, ${!}' : '${!}',
|
||||
== ENDLIST ==
|
||||
|
||||
== SpecParams == expandmenu, insert, sc:p, map:bsp ==
|
||||
|PickList( 'Special Parameters', 'SpecialParameters' )|
|
||||
|PICK|<CURSOR>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
§ =============================================================
|
||||
§ Statements
|
||||
§ =============================================================
|
||||
|
||||
== Statements.case == map:sc, shortcut:c ==
|
||||
case <CURSOR> in
|
||||
)
|
||||
;;
|
||||
|
||||
)
|
||||
;;
|
||||
|
||||
*)
|
||||
;;
|
||||
|
||||
esac # --- end of case ---
|
||||
== Statements.elif == map:sei, shortcut:e ==
|
||||
elif <CURSOR> ; then
|
||||
== Statements.for-in == map:sf, shortcut:f ==
|
||||
for <CURSOR> in ; do
|
||||
<SPLIT><-LOOP_BODY->
|
||||
done
|
||||
== Statements.for == map:sfo, shortcut:f ==
|
||||
for (( CNTR=0; CNTR<<CURSOR>0; CNTR+=1 )); do
|
||||
<SPLIT><-LOOP_BODY->
|
||||
done
|
||||
== Statements.if == map:si, shortcut:i ==
|
||||
if <CURSOR> ; then
|
||||
<SPLIT><-IF_PART->
|
||||
fi
|
||||
== Statements.if-else == map:sie, shortcut:i ==
|
||||
if <CURSOR> ; then
|
||||
<SPLIT><-IF_PART->
|
||||
else
|
||||
<+ELSE_PART+>
|
||||
fi
|
||||
== Statements.select == map:ss, shortcut:s ==
|
||||
select <CURSOR> in ; do
|
||||
<SPLIT>done
|
||||
== Statements.until == map:su, shortcut:u ==
|
||||
until <CURSOR> ; do
|
||||
<SPLIT>done
|
||||
== Statements.while == map:sw, shortcut:w ==
|
||||
while <CURSOR> ; do
|
||||
<SPLIT>done
|
||||
== Statements.function == map:sfu, shortcut:f ==
|
||||
function |?FUNCTION_NAME| ()
|
||||
{
|
||||
<CURSOR><SPLIT>
|
||||
} # ---------- end of function |FUNCTION_NAME| ----------
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
§ -------------------------------------------------------------
|
||||
|
||||
== SEP: Statements.sep-print ==
|
||||
|
||||
== Statements.echo == insert, map:se, shortcut:e ==
|
||||
echo -e "<CURSOR><SPLIT>"
|
||||
== Statements.printf == insert, map:sp, shortcut:p ==
|
||||
printf "%s\n" <CURSOR><SPLIT>
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
§ -------------------------------------------------------------
|
||||
|
||||
== SEP: Statements.sep-array ==
|
||||
|
||||
== Statements.array element == insert, map:sae, shortcut:a ==
|
||||
${<CURSOR><SPLIT>[]}
|
||||
== Statements.array elements, all == insert, map:saa, shortcut:a ==
|
||||
${<CURSOR><SPLIT>[@]}
|
||||
== Statements.array elements, string == insert, map:sas, shortcut:s ==
|
||||
${<CURSOR><SPLIT>[*]}
|
||||
== Statements.subarray == insert, map:ssa, shortcut:s ==
|
||||
${<CURSOR><SPLIT>[@]::}
|
||||
== Statements.no of element == insert, map:san, shortcut:n ==
|
||||
${#<CURSOR><SPLIT>[@]}
|
||||
== Statements.array indices== insert, map:sai, shortcut:i ==
|
||||
${!<CURSOR><SPLIT>[@]}
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,86 @@
|
||||
§ =============================================================
|
||||
§ Tests
|
||||
§ =============================================================
|
||||
|
||||
== LIST: TestsArithmetic == hash ==
|
||||
'arg1 is equal to arg2, -eq' : '-eq',
|
||||
'arg1 not equal to arg2, -ne' : '-ne',
|
||||
'arg1 less than arg2, -lt' : '-lt',
|
||||
'arg1 less than or equal to arg2, -le' : '-le',
|
||||
'arg1 greater than arg2, -gt' : '-gt',
|
||||
'arg1 greater than or equal to arg2, -ge' : '-ge',
|
||||
== ENDLIST ==
|
||||
|
||||
== Tests.arithmetic tests == expandmenu, insert, sc:a, map:ta ==
|
||||
|PickList( 'arithmetic tests', 'TestsArithmetic' )|
|
||||
[ <CURSOR> |PICK| ]
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: TestsFilePermission == hash ==
|
||||
'readable, -r' : '-r',
|
||||
'writable, -w' : '-w',
|
||||
'executable, -x' : '-x',
|
||||
'SUID-bit is set, -u' : '-u',
|
||||
'SGID-bit is set, -g' : '-g',
|
||||
'sticky bit is set, -k' : '-k',
|
||||
== ENDLIST ==
|
||||
|
||||
== Tests.file permissions == expandmenu, insert, sc:p, map:tfp ==
|
||||
|PickList( 'file permission', 'TestsFilePermission' )|
|
||||
[ <CURSOR> |PICK| ]
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: TestsFileTypes == hash ==
|
||||
'block special file, -b' : '-b',
|
||||
'character special file, -c' : '-c',
|
||||
'directory, -d' : '-d',
|
||||
'named pipe (FIFO), -p' : '-p',
|
||||
'regular file, -f' : '-f',
|
||||
'socket, -S' : '-S',
|
||||
'symboloc link, -L, -h' : '-L',
|
||||
== ENDLIST ==
|
||||
|
||||
== Tests.file types == expandmenu, insert, sc:t, map:tft ==
|
||||
|PickList( 'file type', 'TestsFileTypes' )|
|
||||
[ <CURSOR> |PICK| ]
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: TestsFileCharacteristics == hash ==
|
||||
'file exists, -e, -a' : '-e',
|
||||
'file exists, size greater zero, -s' : '-s',
|
||||
'file exists, owned by eff UID, -O' : '-O',
|
||||
'file exists, owned by eff GID, -G' : '-G',
|
||||
'file exists, modified since last read, -N' : '-N',
|
||||
'file1 newer than file2, -nt' : '-nt',
|
||||
'file1 older than file2, -ot' : '-ot',
|
||||
'files have same device and inode numbers , -ef' : '-ef',
|
||||
== ENDLIST ==
|
||||
|
||||
== Tests.file characteristics == expandmenu, insert, sc:c, map:tfc ==
|
||||
|PickList( 'file characteristics', 'TestsFileCharacteristics' )|
|
||||
[ <CURSOR> |PICK| ]
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== LIST: TestsStrings == hash ==
|
||||
'length is zero, -z' : '-z',
|
||||
'length is non-zero, -n' : '-n',
|
||||
'strings are equal, ==' : '==',
|
||||
'strings are not equal, !=' : '!=',
|
||||
'sorts before, <' : '<',
|
||||
'sorts after, >' : '>',
|
||||
== ENDLIST ==
|
||||
|
||||
== Tests.string comparison == expandmenu, insert, sc:s, map:ts ==
|
||||
|PickList( 'string comparisons', 'TestsStrings' )|
|
||||
[ <CURSOR> |PICK| ]
|
||||
== ENDTEMPLATE ==
|
||||
|
||||
== Tests.option is enabled, -o == insert, map:toe, sc:o ==
|
||||
[ -o <CURSOR> ]
|
||||
== Tests.variable has been set, -v == insert, map:tvs, sc:v ==
|
||||
[ -v <CURSOR> ]
|
||||
== Tests.file descriptor is open, refers to a terminal, -t == insert, map:tfd, sc:d ==
|
||||
[ -t <CURSOR> ]
|
||||
== Tests.string matches regexp == insert, map:tm, sc:m ==
|
||||
[[ <CURSOR> =~ ]]
|
||||
== ENDTEMPLATE ==
|
||||
@@ -0,0 +1,264 @@
|
||||
BASH
|
||||
BASHPID
|
||||
BASH_ALIASES
|
||||
BASH_ARGC
|
||||
BASH_ARGV
|
||||
BASH_CMDS
|
||||
BASH_COMMAND
|
||||
BASH_ENV
|
||||
BASH_EXECUTION_STRING
|
||||
BASH_LINENO
|
||||
BASHOPTS
|
||||
BASH_REMATCH
|
||||
BASH_SOURCE
|
||||
BASH_SUBSHELL
|
||||
BASH_VERSINFO
|
||||
BASH_VERSION
|
||||
BASH_XTRACEFD
|
||||
CDPATH
|
||||
COLUMNS
|
||||
COMPREPLY
|
||||
COMP_CWORD
|
||||
COMP_KEY
|
||||
COMP_LINE
|
||||
COMP_POINT
|
||||
COMP_TYPE
|
||||
COMP_WORDBREAKS
|
||||
COMP_WORDS
|
||||
DIRSTACK
|
||||
EMACS
|
||||
EUID
|
||||
FCEDIT
|
||||
FIGNORE
|
||||
FUNCNAME
|
||||
FUNCNEST
|
||||
GLOBIGNORE
|
||||
GROUPS
|
||||
HISTCMD
|
||||
HISTCONTROL
|
||||
HISTFILE
|
||||
HISTFILESIZE
|
||||
HISTIGNORE
|
||||
HISTSIZE
|
||||
HISTTIMEFORMAT
|
||||
HOME
|
||||
HOSTFILE
|
||||
HOSTNAME
|
||||
HOSTTYPE
|
||||
IFS
|
||||
IGNOREEOF
|
||||
INPUTRC
|
||||
LANG
|
||||
LC_ALL
|
||||
LC_COLLATE
|
||||
LC_CTYPE
|
||||
LC_MESSAGES
|
||||
LC_NUMERIC
|
||||
LINENO
|
||||
LINES
|
||||
MACHTYPE
|
||||
MAIL
|
||||
MAILCHECK
|
||||
MAILPATH
|
||||
OLDPWD
|
||||
OPTARG
|
||||
OPTERR
|
||||
OPTIND
|
||||
OSTYPE
|
||||
PATH
|
||||
PIPESTATUS
|
||||
POSIXLY_CORRECT
|
||||
PPID
|
||||
PROMPT_COMMAND
|
||||
PROMPT_DIRTRIM
|
||||
PS1
|
||||
PS2
|
||||
PS3
|
||||
PS4
|
||||
PWD
|
||||
RANDOM
|
||||
REPLY
|
||||
SECONDS
|
||||
SHELL
|
||||
SHELLOPTS
|
||||
SHLVL
|
||||
TIMEFORMAT
|
||||
TMOUT
|
||||
TMPDIR
|
||||
UID
|
||||
auto_resume
|
||||
histchars
|
||||
|
||||
alias
|
||||
bg
|
||||
bind
|
||||
break
|
||||
builtin
|
||||
caller
|
||||
cd
|
||||
command
|
||||
compgen
|
||||
complete
|
||||
compopt
|
||||
continue
|
||||
declare
|
||||
dirs
|
||||
disown
|
||||
echo
|
||||
enable
|
||||
eval
|
||||
exec
|
||||
exit
|
||||
export
|
||||
false
|
||||
fc
|
||||
fg
|
||||
getopts
|
||||
hash
|
||||
help
|
||||
history
|
||||
jobs
|
||||
kill
|
||||
let
|
||||
local
|
||||
logout
|
||||
mapfile
|
||||
popd
|
||||
printf
|
||||
pushd
|
||||
pwd
|
||||
read
|
||||
readarray
|
||||
readonly
|
||||
return
|
||||
set
|
||||
shift
|
||||
shopt
|
||||
source
|
||||
suspend
|
||||
test
|
||||
times
|
||||
trap
|
||||
true
|
||||
type
|
||||
typeset
|
||||
ulimit
|
||||
umask
|
||||
unalias
|
||||
unset
|
||||
wait
|
||||
|
||||
case
|
||||
done
|
||||
elif
|
||||
else
|
||||
esac
|
||||
for
|
||||
function
|
||||
select
|
||||
then
|
||||
time
|
||||
until
|
||||
while
|
||||
|
||||
allexport
|
||||
braceexpand
|
||||
emacs
|
||||
errexit
|
||||
errtrace
|
||||
functrace
|
||||
hashall
|
||||
histexpand
|
||||
history
|
||||
ignoreeof
|
||||
keyword
|
||||
monitor
|
||||
noclobber
|
||||
noexec
|
||||
noglob
|
||||
notify
|
||||
nounset
|
||||
onecmd
|
||||
physical
|
||||
pipefail
|
||||
posix
|
||||
privileged
|
||||
verbose
|
||||
xtrace
|
||||
|
||||
autocd
|
||||
cdable_vars
|
||||
cdspell
|
||||
checkhash
|
||||
checkjobs
|
||||
checkwinsize
|
||||
cmdhist
|
||||
compat31
|
||||
compat32
|
||||
compat40
|
||||
compat41
|
||||
dirspell
|
||||
dotglob
|
||||
execfail
|
||||
expand_aliases
|
||||
extdebug
|
||||
extglob
|
||||
extquote
|
||||
failglob
|
||||
force_fignore
|
||||
globstar
|
||||
gnu_errfmt
|
||||
histappend
|
||||
histreedit
|
||||
histverify
|
||||
hostcomplete
|
||||
huponexit
|
||||
interactive_comments
|
||||
lastpipe
|
||||
lithist
|
||||
login_shell
|
||||
mailwarn
|
||||
no_empty_cmd_completion
|
||||
nocaseglob
|
||||
nocasematch
|
||||
nullglob
|
||||
progcomp
|
||||
promptvars
|
||||
restricted_shell
|
||||
shift_verbose
|
||||
sourcepath
|
||||
xpg_echo
|
||||
|
||||
SIGABRT
|
||||
SIGALRM
|
||||
SIGBUS
|
||||
SIGCHLD
|
||||
SIGCONT
|
||||
SIGFPE
|
||||
SIGHUP
|
||||
SIGILL
|
||||
SIGINT
|
||||
SIGIO
|
||||
SIGKILL
|
||||
SIGPIPE
|
||||
SIGPROF
|
||||
SIGPWR
|
||||
SIGQUIT
|
||||
SIGRTMAX
|
||||
SIGRTMIN
|
||||
SIGSEGV
|
||||
SIGSTKFLT
|
||||
SIGSTOP
|
||||
SIGSYS
|
||||
SIGTERM
|
||||
SIGTRAP
|
||||
SIGTSTP
|
||||
SIGTTIN
|
||||
SIGTTOU
|
||||
SIGURG
|
||||
SIGUSR1
|
||||
SIGUSR2
|
||||
SIGVTALRM
|
||||
SIGWINCH
|
||||
SIGXCPU
|
||||
SIGXFSZ
|
||||
@@ -0,0 +1,437 @@
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 4.2
|
||||
=======================================================================================
|
||||
|
||||
- Default shell can be set in ~/.vimrc via g:BASH_Executable.
|
||||
- Errors can be parsed for bash, dash, ksh, zsh.
|
||||
- Bugfix: QuickFix list doesn't work properly (thanks to @PengZheng)
|
||||
- 'Run -> make script executable' (\re) is now a toggle.
|
||||
- Minor corrections and improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 4.1
|
||||
=======================================================================================
|
||||
|
||||
- Filetype plugin added.
|
||||
- Bugfix: Setup of local templates in case of global installation.
|
||||
- Adjusting end-of-line comments improved.
|
||||
- Submenu 'Regexp' renamed to 'PatternMatching'. Appropriate hotkeys renamed.
|
||||
- Minor bugfixes.
|
||||
- Documentation updated.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 4.0
|
||||
=======================================================================================
|
||||
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
++ The plug-in version 4.0+ is a rewriting of version 3.12.1. ++
|
||||
++ The versions 4.0+ are based on a new and more powerful template system ++
|
||||
++ (please see ":help template-support" for more information). ++
|
||||
++ The template syntax has changed! ++
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
- New template system (many thanks to Wolfgang Mehner)
|
||||
- A few new hotkeys and menu item.
|
||||
- A few hotkeys and menu items renamed.
|
||||
- Footer did not appear in doc/bash-hotkeys.pdf
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.12.1
|
||||
=======================================================================================
|
||||
- Minor additions and bugfixes in 2 menus.
|
||||
- Test -v added.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.12
|
||||
=======================================================================================
|
||||
- New global variable g:BASH_InsertFileHeader (suppress file description comment for new files)
|
||||
- New menu item 'view code snippet' (\nv).
|
||||
- New ex command BASH_ScriptCmdLineArguments.
|
||||
- 3 ex commands renamed.
|
||||
- Minor internal improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.11
|
||||
=======================================================================================
|
||||
- Rendering of manuals (\hm) and Bash help (\hh).
|
||||
- Bugfix: \hb, \hm, \hh not working.
|
||||
- Minor internal improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.10
|
||||
=======================================================================================
|
||||
- Resolve $HOME for linked home directories.
|
||||
- Wrong insertion for parameter substitution "match beginning; del longest
|
||||
part" (thanks to John Orr).
|
||||
- Other minor bugs fixed.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.9
|
||||
=======================================================================================
|
||||
- Hotkey renamed: \st -> \su
|
||||
- New global variable allows loading menus only with filetype 'sh'.
|
||||
- Comments: echo "<line>" escapes double quotes in original text.
|
||||
- Other minor bugs fixed.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.8
|
||||
=======================================================================================
|
||||
- New comment submenu 'script sections'.
|
||||
- Two new hotkeys \css, \ckc for commenting.
|
||||
- Two new plugin tags: LICENSE,ORGANIZATION
|
||||
- Run menu: new item 'Bash cmd. line arg.' (\rba).
|
||||
- I/O-Redir-menu: additional item'>&2'
|
||||
- System-wide installation: minimal Template file for a user will automatically
|
||||
be added.
|
||||
- Hotkey renamed: \t -> \t1
|
||||
- A few code snippets for debugging added.
|
||||
- Bugfix: \cl did not work in insert mode.
|
||||
- Other minor bugs fixed.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.7
|
||||
=======================================================================================
|
||||
- The three hotkeys \cl, \cj, \cc allow a range, e.g. '3\cl' (see help text and
|
||||
bash-hot-key.pdf).
|
||||
- Plugin loads faster: loading the templates is delayed until the first use.
|
||||
- Plugin now works with pathogen.vim.
|
||||
- Menus will always be generated (for the use with :emenu).
|
||||
- Bugfix: no local templates available with a system-wide installation (thanks to Iain Arnell).
|
||||
- Several improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.6
|
||||
=======================================================================================
|
||||
- New hotkey \ssa and menu entry for the selection of a subarray.
|
||||
- Bugfix: detection of a systemwide installation can fail.
|
||||
- Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.5
|
||||
=======================================================================================
|
||||
- Bugfix: detection of a systemwide installation can fail.
|
||||
- Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.4
|
||||
=======================================================================================
|
||||
- 2 new hotkeys: \t, \t2 (empty tests)
|
||||
- Windows: user and system installation.
|
||||
- Syntax check under Windows.
|
||||
- Several minor bugsfixed.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.3
|
||||
=======================================================================================
|
||||
- 3 hotkeys renamed: \sl -> \sei (elif), \sas -> \saa ( ${.[@]} ) , \hp -> \hbs.
|
||||
- 3 new hotkeys: \sa1 ( ${.[*]} ), \san ( ${#.[@]} ), \sai ( ${!.[@]} ).
|
||||
- 1 new menu entry (Tests)
|
||||
- Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.2
|
||||
=======================================================================================
|
||||
- New hotkey and menu entry for [[ =~ ]]
|
||||
- New for Bash 4.1: shopt 'compat40', variables '$BASHOPTS', '$BASH_XTRACEFD'.
|
||||
- Bugfixes: local installation looks like a system-wide installation in seldom cases.
|
||||
- Bugfixes: typo in 4 menu entries.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.1.1
|
||||
=======================================================================================
|
||||
- Bugfixes: code snippets will not be found if plugin not installed beyond '$HOME/.vim'.
|
||||
- Bugfixes: undocumented global variable used in above non-standard installation.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.1
|
||||
=======================================================================================
|
||||
- The plugin now handles different template styles without editing and
|
||||
reloading the main template file.
|
||||
- New hotkey and ex-command to switch template styles.
|
||||
- New global List/Dictionnary g:BASH_AlsoBash: add filename pattern (and
|
||||
styles) for files not named *.sh .
|
||||
- Minor improvements.
|
||||
- Bugfixes: missing redraws in some cases.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.0.1
|
||||
=======================================================================================
|
||||
- New global variable g:BASH_Errorformat: adapt the error format used to parse
|
||||
runtime messages to your locale setting.
|
||||
- Bugfix (Windows only): missing internal variable prevents proper initialization.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 3.0
|
||||
=======================================================================================
|
||||
+ Completely new template system. User can change templates on the fly.
|
||||
+ Additional mapping Ctrl-j : jump behind parenthesis or strings in the current line.
|
||||
+ A few Posix character classes have better shortcuts.
|
||||
+ Bugfix: insert mode for Posix character classes.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.14
|
||||
=======================================================================================
|
||||
+ Debugging: ddd always called with bashdb(1).
|
||||
+ More complete adaption to Bash 4.0: options, builtins, environment variables.
|
||||
+ Bugfix: running and starting the debugger causes error if working directory is not
|
||||
the directory of the current file.
|
||||
+ Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.13
|
||||
=======================================================================================
|
||||
+ New menu item 'array element'.
|
||||
+ New hotkeys \sa, \sas.
|
||||
+ New submenu 'Snippets'.
|
||||
+ Hotkeys for the POSIX character classes.
|
||||
+ Hardcopy (run menu) can print any buffer.
|
||||
+ Bugfix: 'Run->save + run script' (\rr, <C-F9>) : visual mode broken.
|
||||
+ Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.12
|
||||
=======================================================================================
|
||||
+ Hotkeys are shown in the menus.
|
||||
+ New menu item and hotkey \hb : open the Bash manual.
|
||||
+ New hotkey \rco : syntax check options.
|
||||
+ File browser for code snippets choosable (new global variable).
|
||||
+ Bugfix: wrapper script for use of a xterm could not handle parameters containing blanks.
|
||||
+ Minor improvements.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.11
|
||||
=======================================================================================
|
||||
+ Additions for Bash version 4.0.
|
||||
+ Comments menu (\cj): adjustment of end-of-line comments improved.
|
||||
+ Two submenus rearranged.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.10
|
||||
=======================================================================================
|
||||
- new item in the Statements-menu: 'for ((...)) do done'.
|
||||
- new item in the Statements-menu: 'printf "%s"'.
|
||||
- new item in the Statements-menu: indirect parameter expansion ${!name}
|
||||
- Bugfix: unnecessary submenu beyond 'Environ'.
|
||||
- Bugfix: shopt menu had no insert mode.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.9.1
|
||||
=======================================================================================
|
||||
- Map leader for hotkeys now user definable: new global variable g:BASH_MapLeader.
|
||||
- Bugfix: 'Statements->no. of elem.s' inserts wrong text.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.9
|
||||
=======================================================================================
|
||||
+ Can now be used under Windows, e.g. with win-bash (few restrictions).
|
||||
+ Name completion when entering a builtin name.
|
||||
+ Bugfix: help shows no selection when just 2 manuals are available.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.8
|
||||
=======================================================================================
|
||||
+ New help menu: help reorganized, 3 new help hotkeys.
|
||||
+ The help hotkeys now also work when Vim is run on the console.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.7.1
|
||||
=======================================================================================
|
||||
+ Minor bugfix in the I/O-Redir-menu.
|
||||
+ I/O-Redir-menu shows redirectors (sort of help).
|
||||
+ I/O-Redir-menu: here-document item has a vmode.
|
||||
+ File name expansion for the first command line argument entered with <S-F9>.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.7
|
||||
=======================================================================================
|
||||
+ When a Bash script is started from the Vim command line errors and warnings (if any)
|
||||
are caught in an error window allowing quickfix commands to be used.
|
||||
+ Scripts which are not set executable can be run under Vim.
|
||||
+ One new hotkey.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.6
|
||||
=======================================================================================
|
||||
+ Superfluous control characters for mode switching (menus, hotkeys) removed. Caused beeps.
|
||||
+ Most hotkeys now work in insert mode.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.5
|
||||
=======================================================================================
|
||||
+ Menu item 'toggle comment' replaces 'code->comment' and 'comment->code'
|
||||
+ Hotkey \co removed, \cc is now a toggle.
|
||||
+ Bugfix. Adjusting comments (\cj): # in '$#' and '${#...}' is no longer
|
||||
regarded as a start of a comment.
|
||||
+ Bugfix. \cl in insert mode called function for visual mode.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.4
|
||||
=======================================================================================
|
||||
+ Format for the macros |DATE|, |TIME|, and |YEAR| can be defined by the user.
|
||||
+ Help text improved.
|
||||
+ Option 'nocasematch' added
|
||||
+ Additional menu entries: 1 parameter substitution, 1 special variable, array index list.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.3
|
||||
=======================================================================================
|
||||
+ Changes to allow a system-wide installation.
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.2
|
||||
=======================================================================================
|
||||
+ Snippets can now be managed in the console mode.
|
||||
+ Three new key mappings for snippet handling.
|
||||
+ Three items from the statements menu removed (quoting; but see file customization.vimrc).
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.1
|
||||
=======================================================================================
|
||||
+ New menu item and key mapping to adjust end-of-line comments.
|
||||
+ New insert mode mappings.
|
||||
+ A few mappings have been renamed (to bring them into line with my C/C++ and Perl plugin).
|
||||
|
||||
=======================================================================================
|
||||
RELEASE NOTES FOR VERSION 2.0.1
|
||||
=======================================================================================
|
||||
+ Bugfix: missing hotkey \ch added.
|
||||
+ File wrapper.sh moved to the new directory 'bash-support/scripts'.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 2.0
|
||||
---------------------------------------------------------------------------------------
|
||||
+ PLUGIN DIRECTORIES REARRANGED.
|
||||
+ One new mapping (\cs).
|
||||
+ Statement menu extended.
|
||||
+ Bash keyword help (S-F1) improved.
|
||||
+ Bugfix: empty new file after removing the header template can't be closed.
|
||||
+ Bugfix : Tools entry missing when root menu not shown from the start.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.15
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Needs Vim version 7.0+.
|
||||
+ Inserting a function can be used in visual mode (+ new key mapping).
|
||||
+ Bugfix: cursor misplaced after some visual mode operations.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.14
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Setting the column for the start of line-end comments improved.
|
||||
+ Mac OS X : circumvent a Vim bug which caused a crash when loading plugin version 1.13.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.13
|
||||
---------------------------------------------------------------------------------------
|
||||
+ The hotkeys F9 and \rd now also starts the debugger if vim is running without GUI.
|
||||
+ The debugger frontend ddd can be started as preferred debugger.
|
||||
+ New help entry in the main menu of this plugin (shows the plugin documentation).
|
||||
+ A hardcopy shows the localized date and time in the header line.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.12
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Bugfix: hotkey <S-F9> now working again.
|
||||
+ Syntax check recognizes shopt options.
|
||||
+ New regex menu: compose regular expressions with a few keystrokes from the menu.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.11
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Start debugger bashdb with a keystroke.
|
||||
+ Parameter substitutions completed.
|
||||
+ Environment variables completed / menu rearranged.
|
||||
+ Builtins completed.
|
||||
+ Code <-> comment working in all modes.
|
||||
+ Insert/remove echo for commenting/uncommenting statements.
|
||||
+ Script will be made executable before running it (e.g. after a "Save As...").
|
||||
+ Statement menu now in alphabetical order.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.10.1
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Starting an xterm was not possible with some installations (bugfix).
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.10
|
||||
---------------------------------------------------------------------------------------
|
||||
+ New Bash 3.0 set options added.
|
||||
+ Shopt-menu added.
|
||||
+ More builtins.
|
||||
+ <S-F1> or \h displays help for the Bash builtin command under the cursor.
|
||||
+ Key mappings for all run menu entries.
|
||||
+ Line end comments start in a fixed column now (can be set from the menu).
|
||||
+ Spaces in path names and file names are now possible.
|
||||
+ Template files and snippet files are no longer kept in the list of alternate files.
|
||||
+ Global variable is_bash is set to avoid a wrong highlighting for $(..) and $((..)).
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.9
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Running a Bash-script
|
||||
(1) The script can be run from the command line as usual.
|
||||
(2) The output can be directed into a window with name "Bash-Output".
|
||||
The buffer and its content will disappear when closing the window.
|
||||
The buffer is reused when still open.
|
||||
(3) The script can be run in an xterm.
|
||||
+ The new hotkey Shift-F9 or the "cmd. line arg." sets command line arguments for the
|
||||
current buffer (that is, each buffer can have its own arguments).
|
||||
+ A code snippet with the file name extension "ni" or "noindent" will not be
|
||||
indented on insertion.
|
||||
+ 'Line End Comments' ignores blank lines in a marked block.
|
||||
+ Calling a set-command (submenu "Set") for a marked block will set this option above
|
||||
this block and unset it below.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.8
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Installation simplified.
|
||||
+ Run syntax check / list errors in an error window
|
||||
+ Append aligned comments to all lines of a marked block.
|
||||
+ The root menu can be removed (default is not removed).
|
||||
+ The dialog windows (GUI) have been replaced by more flexible command line inputs.
|
||||
+ User will now be asked before a snippet file will be overwritten.
|
||||
+ The undocumented and unnecessary hot key F12 has been removed.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.7
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Only one entry in the gVim root menu.
|
||||
+ All hotkeys are only defined for bash files.
|
||||
+ Install script added.
|
||||
+ Customization improved.
|
||||
+ Documentation improved.
|
||||
+ Bug fix (template file handling)
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.6
|
||||
---------------------------------------------------------------------------------------
|
||||
+ 28 key mappings for Vim without GUI. See bash-hot-keys.pdf (reference card).
|
||||
+ Vim doc added (file bashsupport.txt).
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.5
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Tag substitution rewritten (Some characters in a substitution text for a tag
|
||||
prevented the tag from being substituted).
|
||||
+ All bash variables can now be inserted from the menus.
|
||||
+ A marked region can be surrounded by a for-, if, select- while- or until
|
||||
statement (with indentation).
|
||||
+ A marked text can be surrounded with quotes.
|
||||
+ A marked region or a complete line can be surrounded with echo " ".
|
||||
+ The echo " " can be removed from a line.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
RELEASE NOTES FOR VERSION 1.4
|
||||
---------------------------------------------------------------------------------------
|
||||
+ Block comments are now read as templates or skeletons from files:
|
||||
frame Comment, function description, file header
|
||||
+ These templates can contain tags like |FILENAME|, |AUTHOR| etc. which are replaced
|
||||
after reading.
|
||||
+ indentation: multiline inserts and code snippets will be indented after insertion.
|
||||
+ Most menu entries are now also active in normal mode.
|
||||
+ Reading the templates is done in one function which can be called in an autocmd.
|
||||
+ Code cleanup: register z no longer used. Most function calls are silent now.
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,268 @@
|
||||
%%=====================================================================================
|
||||
%%
|
||||
%% File: bash-hotkeys.tex
|
||||
%%
|
||||
%% Description: bash-support.vim : Key mappings for Bash with/without GUI.
|
||||
%%
|
||||
%% Author: Dr.-Ing. Fritz Mehner
|
||||
%% Email: mehner.fritz@fh-swf.de
|
||||
%% Copyright: Copyright (C) 2013-2014 Dr.-Ing. Fritz Mehner (mehner.fritz@fh-swf.de)
|
||||
%% Version: see \Pluginversion
|
||||
%% Created: 20.05.2013
|
||||
%%
|
||||
%%=====================================================================================
|
||||
|
||||
%%======================================================================
|
||||
%% LaTeX settings [[[1
|
||||
%%======================================================================
|
||||
|
||||
\documentclass[oneside,11pt,landscape,DIV16]{scrartcl}
|
||||
|
||||
\usepackage[english]{babel}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{times}
|
||||
\usepackage{lastpage}
|
||||
\usepackage{multicol}
|
||||
\usepackage{fancyhdr}
|
||||
|
||||
\setlength\parindent{0pt}
|
||||
|
||||
\newcommand{\Pluginversion}{4.2.1}
|
||||
\newcommand{\ReleaseDate}{\today}
|
||||
\newcommand{\Rep}{{\scriptsize{[n]}}}
|
||||
|
||||
%%----------------------------------------------------------------------
|
||||
%% fancyhdr
|
||||
%%----------------------------------------------------------------------
|
||||
\pagestyle{fancyplain}
|
||||
\fancyhf{}
|
||||
\fancyfoot[L]{\small \ReleaseDate}
|
||||
\fancyfoot[C]{\small bash-support.vim}
|
||||
\fancyfoot[R]{\small \textbf{Page \thepage{} / \pageref{LastPage}}}
|
||||
\renewcommand{\headrulewidth}{0.0pt}
|
||||
|
||||
%%----------------------------------------------------------------------
|
||||
%% luximono : Type1-font
|
||||
%% Makes keyword stand out by using semibold letters.
|
||||
%%----------------------------------------------------------------------
|
||||
\usepackage[scaled]{luximono}
|
||||
|
||||
%%----------------------------------------------------------------------
|
||||
%% hyperref
|
||||
%%----------------------------------------------------------------------
|
||||
\usepackage[ps2pdf]{hyperref}
|
||||
\hypersetup{pdfauthor={Dr.-Ing. Fritz Mehner, FH Südwestfalen, Iserlohn, Germany}}
|
||||
\hypersetup{pdfkeywords={Vim, Perl}}
|
||||
\hypersetup{pdfsubject={Vim-plug-in, bash-support.vim, hot keys}}
|
||||
\hypersetup{pdftitle={Vim-plug-in, bash-support.vim, hot keys}}
|
||||
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
%% START OF DOCUMENT
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\begin{document}%
|
||||
|
||||
\begin{multicols}{3}
|
||||
%
|
||||
\begin{center}
|
||||
%
|
||||
%%======================================================================
|
||||
%% title [[[1
|
||||
%%======================================================================
|
||||
\textbf{\textsc{\small{Vim-Plug-in}}}\\
|
||||
\textbf{\LARGE{bash-support.vim}}\\
|
||||
\textbf{\textsc{\small{Version \Pluginversion}}}\\
|
||||
\vspace{5mm}%
|
||||
\textbf{\textsc{\Huge{Hot keys}}}\\
|
||||
\vspace{5mm}%
|
||||
Key mappings for Vim and gVim.\\
|
||||
Plug-in: http://vim.sourceforge.net\\
|
||||
Fritz Mehner (mehner.fritz@fh-swf.de)\\
|
||||
\vspace{1.0mm}
|
||||
{\normalsize (i)} insert mode, {\normalsize (n)} normal mode, {\normalsize (v)} visual mode\\
|
||||
\vspace{4.0mm}
|
||||
|
||||
%%======================================================================
|
||||
%% table, left part [[[1
|
||||
%%======================================================================
|
||||
%%----------------------------------------------------------------------
|
||||
%% main menu [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||||
\begin{tabular}[]{|p{11mm}|p{60mm}|}
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{B}ash}}\\[1.0ex]
|
||||
\hline \verb'\bps' & \textbf{p}arameter \textbf{s}ubstitution (list) \hfill (n, i)\\
|
||||
\hline \verb'\bsp' & \textbf{s}pecial \textbf{p}arameters (list) \hfill (n, i)\\
|
||||
\hline \verb'\ben' & \textbf{en}vironment (list) \hfill (n, i)\\
|
||||
\hline \verb'\bbu' & \textbf{bu}iltins (list) \hfill (n, i)\\
|
||||
\hline \verb'\bse' & \textbf{se}t options (list) \hfill (n, i)\\
|
||||
\hline \verb'\bso' & \textbf{s}h\textbf{o}pts (list) \hfill (n, i)\\
|
||||
\hline
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Comments [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{C}omments}} \\[1.0ex]
|
||||
\hline \Rep\verb'\cl' & end-of-line comment \hfill (n, i, v)\\
|
||||
\hline \Rep\verb'\cj' & adjust end-of-line comments \hfill (n, i, v)\\
|
||||
\hline \verb'\cs' & set end-of-line comment col. \hfill (n)\\
|
||||
%
|
||||
\hline \Rep\verb'\cc' & code $\rightarrow$ comment \hfill (n, i, v)\\
|
||||
\hline \Rep\verb'\cu' & uncomment code \hfill (n, i, v)\\
|
||||
%
|
||||
\hline \verb'\cfr' & frame comment \hfill (n, i)\\
|
||||
\hline \verb'\cfu' & function description \hfill (n, i)\\
|
||||
\hline \verb'\ch' & file header \hfill (n, i)\\
|
||||
\hline \verb'\cd' & date \hfill (n, i)\\
|
||||
\hline \verb'\ct' & date \& time \hfill (n, i)\\
|
||||
\hline \verb'\css' & script sections \hfill (n, i)\\
|
||||
\hline \verb'\ckc' & keyword comments \hfill (n, i)\\
|
||||
\hline \verb'\cma' & plug-in macros \hfill (n, i)\\
|
||||
%
|
||||
\hline \verb'\ce' & \texttt{echo} "\textsl{actual line}" \hfill (n, i)\\
|
||||
\hline \verb'\cr' & remove \texttt{echo} from actual line \hfill (n, i)\\
|
||||
\hline
|
||||
\end{tabular}\\
|
||||
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||||
%
|
||||
%%======================================================================
|
||||
%% table, middle part [[[1
|
||||
%%======================================================================
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Statements [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||||
\begin{tabular}[]{|p{11mm}|p{60mm}|}
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{S}tatements}} \\[1.0ex]
|
||||
\hline \verb'\sc' & \verb'case in ... esac' \hfill (n, i)\\
|
||||
\hline \verb'\sei' & \verb'elif then' \hfill (n, i)\\
|
||||
\hline \verb'\sf' & \verb'for in do done' \hfill (n, i, v)\\
|
||||
\hline \verb'\sfo' & \verb'for ((...)) do done' \hfill (n, i, v)\\
|
||||
\hline \verb'\si' & \verb'if then fi' \hfill (n, i, v)\\
|
||||
\hline \verb'\sie' & \verb'if then else fi' \hfill (n, i, v)\\
|
||||
\hline \verb'\ss' & \verb'select in do done' \hfill (n, i, v)\\
|
||||
\hline \verb'\su' & \verb'until do done' \hfill (n, i, v)\\
|
||||
\hline \verb'\sw' & \verb'while do done' \hfill (n, i, v)\\
|
||||
\hline \verb'\sfu' & \verb'function' \hfill (n, i, v)\\
|
||||
%
|
||||
\hline \verb'\se' & \verb'echo -e ""' \hfill (n, i, v)\\
|
||||
\hline \verb'\sp' & \verb'printf "%s"' \hfill (n, i, v)\\
|
||||
%
|
||||
\hline \verb'\sae' & array element\ \ \ \verb'${.[.]}' \hfill (n, i, v)\\
|
||||
\hline \verb'\saa' & arr. elem.s (all) \ \verb'${.[@]}' \hfill (n, i, v)\\
|
||||
\hline \verb'\sas' & arr. elem.s (1 word) \ \verb'${.[*]}' \hfill (n, i, v)\\
|
||||
\hline \verb'\ssa' & subarray \ \verb'${.[@]::}' \hfill (n, i, v)\\
|
||||
\hline \verb'\san' & no. of arr. elem.s \ \verb'${.[@]}' \hfill (n, i, v)\\
|
||||
\hline \verb'\sai' & list of indices \ \verb'${.[*]}' \hfill (n, i, v)\\
|
||||
\hline
|
||||
%%
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Tests [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{T}ests}} \\[1.0ex]
|
||||
\hline \verb'\ta' & arithmetic tests \hfill (n, i)\\
|
||||
\hline \verb'\tfp' & file permissions \hfill (n, i)\\
|
||||
\hline \verb'\tft' & file types \hfill (n, i)\\
|
||||
\hline \verb'\tfc' & file characteristics \hfill (n, i)\\
|
||||
\hline \verb'\ts' & string comparisons \hfill (n, i)\\
|
||||
\hline \verb'\toe' & option is enabled \hfill (n, i)\\
|
||||
\hline \verb'\tvs' & variables has been set \hfill (n, i)\\
|
||||
\hline \verb'\tfd' & file descr. refers to a terminal \hfill (n, i)\\
|
||||
\hline \verb'\tm' & string matches regexp \hfill (n, i)\\
|
||||
\hline
|
||||
%%
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu IO-Redirection [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{I}O-Redirection}} \\[1.0ex]
|
||||
\hline \verb'\ior' & IO-redirections (list) \hfill (n, i)\\
|
||||
\hline \verb'\ioh' & here-document \hfill (n, i)\\
|
||||
\hline
|
||||
%
|
||||
\end{tabular}\\
|
||||
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||||
%
|
||||
%%======================================================================
|
||||
%% table, right part [[[1
|
||||
%%======================================================================
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Pattern Matching [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
%%~~~~~ TABULAR : begin ~~~~~~~~~~
|
||||
\begin{tabular}[]{|p{11mm}|p{62mm}|}
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{P}attern Matching}} \\[1.0ex]
|
||||
\hline \verb'pzo' & zero or one, \verb' ?( | )' \hfill (n, i)\\
|
||||
\hline \verb'pzm' & zero or more, \verb' *( | )' \hfill (n, i)\\
|
||||
\hline \verb'pom' & one or more, \verb' +( | )' \hfill (n, i)\\
|
||||
\hline \verb'peo' & exactly one, \verb' @( | )' \hfill (n, i)\\
|
||||
\hline \verb'pae' & anything except, \verb' !( | )' \hfill (n, i)\\
|
||||
\hline \verb'ppc' & POSIX classes \hfill (n, i)\\
|
||||
\hline \verb'pbr' & \verb'${BASH_REMATCH[0'$\ldots$\verb'3]}' \hfill (n, i)\\
|
||||
\hline
|
||||
%
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Snippet [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{S\textbf{n}ippets}} \\[1.0ex]
|
||||
\hline \verb'\nr' & read code snippet \hfill (n, i)\\
|
||||
\hline \verb'\nv' & view code snippet \hfill (n, i)\\
|
||||
\hline \verb'\nw' & write code snippet \hfill (n, i, v)\\
|
||||
\hline \verb'\ne' & edit code snippet \hfill (n, i)\\
|
||||
\hline \verb'\ntl' & edit templates \hfill (n, i)\\
|
||||
\hline \verb'\ntr' & reread templates \hfill (n, i)\\
|
||||
\hline \verb'\nts' & choose style \hfill (n, i)\\
|
||||
\hline
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Run [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{R}un}} \\[1.0ex]
|
||||
\hline \verb'\rr' & update file, run script \hfill (n, i, v$^1$)\\
|
||||
\hline \verb'\ra' & set script cmd. line arguments \hfill (n, i)\\
|
||||
\hline \verb'\rba' & set Bash cmd. line arguments \hfill (n, i)\\
|
||||
\hline \verb'\rc' & update file, check syntax \hfill (n, i)\\
|
||||
\hline \verb'\rco' & syntax check options \hfill (n, i)\\
|
||||
\hline \verb'\rd' & start debugger$^1$ \hfill (n, i)\\
|
||||
\hline \verb'\re' & make script executable/not exec.$^1$ \hfill (n, i)\\
|
||||
\hline \verb'\rh' & hardcopy buffer \hfill (n, i, v)\\
|
||||
\hline \verb'\rs' & plug-in settings \hfill (n, i)\\
|
||||
\hline \verb'\rx' & set xterm size$^{1,2}$ \hfill (n, i)\\
|
||||
\hline \verb'\ro' & change output destination \hfill (n, i)\\
|
||||
\hline
|
||||
%%----------------------------------------------------------------------
|
||||
%% menu Help [[[2
|
||||
%%----------------------------------------------------------------------
|
||||
\hline
|
||||
\multicolumn{2}{|r|}{\textsl{\textbf{H}elp}}\\[1.0ex]
|
||||
\hline \verb'\hb' & display the Bash manual \hfill (n,i)\\
|
||||
\hline \verb'\hh' & help (Bash builtins) \hfill (n,i)\\
|
||||
\hline \verb'\hm' & show manual (cmd. line utilities) \hfill (n,i)\\
|
||||
\hline \verb'\hp' & help (plug-in) \hfill (n,i)\\
|
||||
\hline
|
||||
\end{tabular}\\
|
||||
%%~~~~~ TABULAR : end ~~~~~~~~~~
|
||||
%
|
||||
\vfill
|
||||
%
|
||||
\begin{minipage}[b]{75mm}%
|
||||
\scriptsize{%
|
||||
\vspace{2mm}
|
||||
%\hrulefill\\
|
||||
$^1$ {Linux/U**x only}\\
|
||||
$^2$ {GUI only}
|
||||
}%
|
||||
\end{minipage}\\
|
||||
%
|
||||
%
|
||||
\end{center}%
|
||||
\end{multicols}%
|
||||
%
|
||||
%%----- TABBING : end ----------
|
||||
\end{document}
|
||||
% vim: foldmethod=marker foldmarker=[[[,]]]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,136 @@
|
||||
Bash_ResetMapLeader() bashsupport.txt /*Bash_ResetMapLeader()*
|
||||
Bash_SetMapLeader() bashsupport.txt /*Bash_SetMapLeader()*
|
||||
bash-support bashsupport.txt /*bash-support*
|
||||
bashsupport bashsupport.txt /*bashsupport*
|
||||
bashsupport-Ctrl-j bashsupport.txt /*bashsupport-Ctrl-j*
|
||||
bashsupport-ad-mappings bashsupport.txt /*bashsupport-ad-mappings*
|
||||
bashsupport-aligned-comm bashsupport.txt /*bashsupport-aligned-comm*
|
||||
bashsupport-also-bash bashsupport.txt /*bashsupport-also-bash*
|
||||
bashsupport-bash-cmdline-args bashsupport.txt /*bashsupport-bash-cmdline-args*
|
||||
bashsupport-cmdline-args bashsupport.txt /*bashsupport-cmdline-args*
|
||||
bashsupport-codesnippets bashsupport.txt /*bashsupport-codesnippets*
|
||||
bashsupport-comm-echo bashsupport.txt /*bashsupport-comm-echo*
|
||||
bashsupport-comm-keywords bashsupport.txt /*bashsupport-comm-keywords*
|
||||
bashsupport-comm-realign bashsupport.txt /*bashsupport-comm-realign*
|
||||
bashsupport-comm-templates bashsupport.txt /*bashsupport-comm-templates*
|
||||
bashsupport-comm-toggle bashsupport.txt /*bashsupport-comm-toggle*
|
||||
bashsupport-comments bashsupport.txt /*bashsupport-comments*
|
||||
bashsupport-custom-files bashsupport.txt /*bashsupport-custom-files*
|
||||
bashsupport-custom-root bashsupport.txt /*bashsupport-custom-root*
|
||||
bashsupport-custom-variables bashsupport.txt /*bashsupport-custom-variables*
|
||||
bashsupport-customization bashsupport.txt /*bashsupport-customization*
|
||||
bashsupport-debugger bashsupport.txt /*bashsupport-debugger*
|
||||
bashsupport-dictionary bashsupport.txt /*bashsupport-dictionary*
|
||||
bashsupport-errorformat bashsupport.txt /*bashsupport-errorformat*
|
||||
bashsupport-hardcopy bashsupport.txt /*bashsupport-hardcopy*
|
||||
bashsupport-help bashsupport.txt /*bashsupport-help*
|
||||
bashsupport-hotkeys bashsupport.txt /*bashsupport-hotkeys*
|
||||
bashsupport-io-redir bashsupport.txt /*bashsupport-io-redir*
|
||||
bashsupport-output bashsupport.txt /*bashsupport-output*
|
||||
bashsupport-pattern bashsupport.txt /*bashsupport-pattern*
|
||||
bashsupport-release-notes bashsupport.txt /*bashsupport-release-notes*
|
||||
bashsupport-run bashsupport.txt /*bashsupport-run*
|
||||
bashsupport-run-script bashsupport.txt /*bashsupport-run-script*
|
||||
bashsupport-snippets bashsupport.txt /*bashsupport-snippets*
|
||||
bashsupport-stat-norm-ins bashsupport.txt /*bashsupport-stat-norm-ins*
|
||||
bashsupport-stat-visual bashsupport.txt /*bashsupport-stat-visual*
|
||||
bashsupport-statements bashsupport.txt /*bashsupport-statements*
|
||||
bashsupport-syntax-check bashsupport.txt /*bashsupport-syntax-check*
|
||||
bashsupport-syntax-check-options bashsupport.txt /*bashsupport-syntax-check-options*
|
||||
bashsupport-system-wide bashsupport.txt /*bashsupport-system-wide*
|
||||
bashsupport-templates bashsupport.txt /*bashsupport-templates*
|
||||
bashsupport-templates-date bashsupport.txt /*bashsupport-templates-date*
|
||||
bashsupport-templates-definition bashsupport.txt /*bashsupport-templates-definition*
|
||||
bashsupport-templates-edit bashsupport.txt /*bashsupport-templates-edit*
|
||||
bashsupport-templates-files bashsupport.txt /*bashsupport-templates-files*
|
||||
bashsupport-templates-jumptags bashsupport.txt /*bashsupport-templates-jumptags*
|
||||
bashsupport-templates-macros bashsupport.txt /*bashsupport-templates-macros*
|
||||
bashsupport-templates-names bashsupport.txt /*bashsupport-templates-names*
|
||||
bashsupport-tests bashsupport.txt /*bashsupport-tests*
|
||||
bashsupport-troubleshooting bashsupport.txt /*bashsupport-troubleshooting*
|
||||
bashsupport-usage-gvim bashsupport.txt /*bashsupport-usage-gvim*
|
||||
bashsupport-usage-vim bashsupport.txt /*bashsupport-usage-vim*
|
||||
bashsupport-windows bashsupport.txt /*bashsupport-windows*
|
||||
bashsupport-xterm bashsupport.txt /*bashsupport-xterm*
|
||||
bashsupport.txt bashsupport.txt /*bashsupport.txt*
|
||||
mmtemplates#core#ChooseStyle() templatesupport.txt /*mmtemplates#core#ChooseStyle()*
|
||||
mmtemplates#core#CreateMaps() templatesupport.txt /*mmtemplates#core#CreateMaps()*
|
||||
mmtemplates#core#CreateMenus() templatesupport.txt /*mmtemplates#core#CreateMenus()*
|
||||
mmtemplates#core#EditTemplateFiles() templatesupport.txt /*mmtemplates#core#EditTemplateFiles()*
|
||||
mmtemplates#core#EscapeMenu() templatesupport.txt /*mmtemplates#core#EscapeMenu()*
|
||||
mmtemplates#core#ExpandText() templatesupport.txt /*mmtemplates#core#ExpandText()*
|
||||
mmtemplates#core#InsertTemplate() templatesupport.txt /*mmtemplates#core#InsertTemplate()*
|
||||
mmtemplates#core#JumpToTag() templatesupport.txt /*mmtemplates#core#JumpToTag()*
|
||||
mmtemplates#core#NewLibrary() templatesupport.txt /*mmtemplates#core#NewLibrary()*
|
||||
mmtemplates#core#ReadTemplates() templatesupport.txt /*mmtemplates#core#ReadTemplates()*
|
||||
mmtemplates#core#ResetMapleader() templatesupport.txt /*mmtemplates#core#ResetMapleader()*
|
||||
mmtemplates#core#Resource() templatesupport.txt /*mmtemplates#core#Resource()*
|
||||
mmtemplates#core#SetMapleader() templatesupport.txt /*mmtemplates#core#SetMapleader()*
|
||||
template-support templatesupport.txt /*template-support*
|
||||
template-support-IncludeFile() templatesupport.txt /*template-support-IncludeFile()*
|
||||
template-support-MenuShortcut() templatesupport.txt /*template-support-MenuShortcut()*
|
||||
template-support-PickFile() templatesupport.txt /*template-support-PickFile()*
|
||||
template-support-PickList() templatesupport.txt /*template-support-PickList()*
|
||||
template-support-Prompt() templatesupport.txt /*template-support-Prompt()*
|
||||
template-support-SetFormat() templatesupport.txt /*template-support-SetFormat()*
|
||||
template-support-SetMacro() templatesupport.txt /*template-support-SetMacro()*
|
||||
template-support-SetPath() templatesupport.txt /*template-support-SetPath()*
|
||||
template-support-SetProperty() templatesupport.txt /*template-support-SetProperty()*
|
||||
template-support-SetStyle() templatesupport.txt /*template-support-SetStyle()*
|
||||
template-support-above templatesupport.txt /*template-support-above*
|
||||
template-support-adv-files templatesupport.txt /*template-support-adv-files*
|
||||
template-support-adv-styles templatesupport.txt /*template-support-adv-styles*
|
||||
template-support-advanced templatesupport.txt /*template-support-advanced*
|
||||
template-support-api templatesupport.txt /*template-support-api*
|
||||
template-support-api-access templatesupport.txt /*template-support-api-access*
|
||||
template-support-api-basic templatesupport.txt /*template-support-api-basic*
|
||||
template-support-api-maps templatesupport.txt /*template-support-api-maps*
|
||||
template-support-api-misc templatesupport.txt /*template-support-api-misc*
|
||||
template-support-append templatesupport.txt /*template-support-append*
|
||||
template-support-backwards templatesupport.txt /*template-support-backwards*
|
||||
template-support-bare templatesupport.txt /*template-support-bare*
|
||||
template-support-basics templatesupport.txt /*template-support-basics*
|
||||
template-support-below templatesupport.txt /*template-support-below*
|
||||
template-support-change-log templatesupport.txt /*template-support-change-log*
|
||||
template-support-cmd-cmd-sct templatesupport.txt /*template-support-cmd-cmd-sct*
|
||||
template-support-cmd-templates templatesupport.txt /*template-support-cmd-templates*
|
||||
template-support-commands templatesupport.txt /*template-support-commands*
|
||||
template-support-contents templatesupport.txt /*template-support-contents*
|
||||
template-support-dict templatesupport.txt /*template-support-dict*
|
||||
template-support-dictionary templatesupport.txt /*template-support-dictionary*
|
||||
template-support-expandmenu templatesupport.txt /*template-support-expandmenu*
|
||||
template-support-hash templatesupport.txt /*template-support-hash*
|
||||
template-support-help-templ templatesupport.txt /*template-support-help-templ*
|
||||
template-support-indent templatesupport.txt /*template-support-indent*
|
||||
template-support-insert templatesupport.txt /*template-support-insert*
|
||||
template-support-intro templatesupport.txt /*template-support-intro*
|
||||
template-support-lib-person templatesupport.txt /*template-support-lib-person*
|
||||
template-support-library templatesupport.txt /*template-support-library*
|
||||
template-support-list templatesupport.txt /*template-support-list*
|
||||
template-support-lists templatesupport.txt /*template-support-lists*
|
||||
template-support-lists-format templatesupport.txt /*template-support-lists-format*
|
||||
template-support-lists-hash templatesupport.txt /*template-support-lists-hash*
|
||||
template-support-map templatesupport.txt /*template-support-map*
|
||||
template-support-menus templatesupport.txt /*template-support-menus*
|
||||
template-support-noindent templatesupport.txt /*template-support-noindent*
|
||||
template-support-nomenu templatesupport.txt /*template-support-nomenu*
|
||||
template-support-novisual templatesupport.txt /*template-support-novisual*
|
||||
template-support-opt-list templatesupport.txt /*template-support-opt-list*
|
||||
template-support-opt-templ templatesupport.txt /*template-support-opt-templ*
|
||||
template-support-options templatesupport.txt /*template-support-options*
|
||||
template-support-sc templatesupport.txt /*template-support-sc*
|
||||
template-support-shortcut templatesupport.txt /*template-support-shortcut*
|
||||
template-support-start templatesupport.txt /*template-support-start*
|
||||
template-support-syntax templatesupport.txt /*template-support-syntax*
|
||||
template-support-syntax-cmd templatesupport.txt /*template-support-syntax-cmd*
|
||||
template-support-syntax-list templatesupport.txt /*template-support-syntax-list*
|
||||
template-support-syntax-templ templatesupport.txt /*template-support-syntax-templ*
|
||||
template-support-templ-macro templatesupport.txt /*template-support-templ-macro*
|
||||
template-support-templ-maps templatesupport.txt /*template-support-templ-maps*
|
||||
template-support-templ-place templatesupport.txt /*template-support-templ-place*
|
||||
template-support-templ-predef templatesupport.txt /*template-support-templ-predef*
|
||||
template-support-templ-tags templatesupport.txt /*template-support-templ-tags*
|
||||
template-support-templ-visual templatesupport.txt /*template-support-templ-visual*
|
||||
template-support-templates templatesupport.txt /*template-support-templates*
|
||||
template-support-visual templatesupport.txt /*template-support-visual*
|
||||
templatesupport.txt templatesupport.txt /*templatesupport.txt*
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,43 @@
|
||||
" Vim filetype plugin file
|
||||
"
|
||||
" Language : bash
|
||||
" Plugin : bash-support.vim
|
||||
" Maintainer : Fritz Mehner <mehner@fh-swf.de>
|
||||
"
|
||||
" -----------------------------------------------------------------
|
||||
"
|
||||
" Only do this when not done yet for this buffer
|
||||
"
|
||||
if exists("b:did_BASH_ftplugin")
|
||||
finish
|
||||
endif
|
||||
let b:did_BASH_ftplugin = 1
|
||||
"
|
||||
"------------------------------------------------------------------------------
|
||||
" Avoid a wrong syntax highlighting for $(..) and $((..))
|
||||
"------------------------------------------------------------------------------
|
||||
let b:is_bash = 1
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" additional mapping : single quotes around a Word (non-whitespaces)
|
||||
" masks the normal mode command '' (jump to the position
|
||||
" before the latest jump)
|
||||
" additional mapping : double quotes around a Word (non-whitespaces)
|
||||
"-------------------------------------------------------------------------------
|
||||
nnoremap <buffer> '' ciW''<Esc>P
|
||||
nnoremap <buffer> "" ciW""<Esc>P
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" set "maplocalleader" as configured using "g:BASH_MapLeader"
|
||||
"-------------------------------------------------------------------------------
|
||||
call Bash_SetMapLeader ()
|
||||
"
|
||||
" maps defined here will use "g:BASH_MapLeader" as <LocalLeader>
|
||||
" example:
|
||||
"map <buffer> <LocalLeader>eg :echo "Example Map :)"<CR>
|
||||
"
|
||||
"-------------------------------------------------------------------------------
|
||||
" reset "maplocalleader"
|
||||
"-------------------------------------------------------------------------------
|
||||
call Bash_ResetMapLeader ()
|
||||
"
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,94 @@
|
||||
" Vim syntax file
|
||||
" Language: mm template engine : template library
|
||||
" Maintainer: Wolfgang Mehner <wolfgang-mehner@web.de>
|
||||
" Last Change: 12.08.2013
|
||||
" Version: 0.9.1-2
|
||||
|
||||
if version < 600
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
"-------------------------------------------------------------------------------
|
||||
" Syntax
|
||||
"-------------------------------------------------------------------------------
|
||||
|
||||
" comment
|
||||
syn match Comment "^§.*$"
|
||||
syn match Comment "\%(==\)\@<=[^=]*$"
|
||||
|
||||
" templates, lists, ...
|
||||
syn match Structure "^==\s*\%(TEMPLATE:\)\?[a-zA-Z0-9\-+.,_ ]\+==\%(.\+==\)\?"
|
||||
syn match Structure "^==\s*ENDTEMPLATE\s*=="
|
||||
|
||||
syn match Structure "^==\s*HELP:[a-zA-Z0-9\-+.,_ ]\+==\%(.\+==\)\?"
|
||||
|
||||
syn match Structure "^==\s*SEP:[a-zA-Z0-9\-+.,_ ]\+=="
|
||||
|
||||
syn match Structure "^==\s*LIST:\s*[a-zA-Z0-9_]\+\s*==\%(.\+==\)\?"
|
||||
syn match Structure "^==\s*ENDLIST\s*=="
|
||||
|
||||
" style sections
|
||||
syn match Statement "^==\s*IF\s\+|STYLE|\s\+IS\s\+[a-zA-Z0-9_]\+\s*=="
|
||||
syn match Statement "^==\s*ENDIF\s*=="
|
||||
|
||||
syn match Statement "^==\s*USE\s\+STYLES\s*:[a-zA-Z0-9_, ]\+=="
|
||||
syn match Statement "^==\s*ENDSTYLES\s*=="
|
||||
|
||||
" functions: command mode
|
||||
syn match Function "IncludeFile\ze\s*("
|
||||
syn match Function "SetFormat\ze\s*("
|
||||
syn match Function "SetMacro\ze\s*("
|
||||
syn match Function "SetStyle\ze\s*("
|
||||
syn match Function "SetSyntax\ze\s*("
|
||||
syn match Function "SetPath\ze\s*("
|
||||
|
||||
syn match Function "MenuShortcut\ze\s*("
|
||||
syn match Function "SetProperty\ze\s*("
|
||||
syn match Function "SetMap\ze\s*("
|
||||
syn match Function "SetShortcut\ze\s*("
|
||||
|
||||
" functions: standard template
|
||||
syn match Function "|\zsDefaultMacro\ze("
|
||||
syn match Function "|\zsPrompt\ze("
|
||||
syn match Function "|\zsPickFile\ze("
|
||||
syn match Function "|\zsPickList\ze("
|
||||
syn match Function "|\zsSurroundWith\ze("
|
||||
syn match Function "|\zsInsert\ze("
|
||||
syn match Function "|\zsInsertLine\ze("
|
||||
|
||||
syn match Comment "|C(.\{-})|"
|
||||
syn match Comment "|Comment(.\{-})|"
|
||||
|
||||
" functions: picker
|
||||
syn match Function "|\zsPath\ze(" " file
|
||||
syn match Function "|\zsGetPath\ze(" " file
|
||||
syn match Function "|\zsKeepPath\ze(" " file
|
||||
syn match Function "|\zsRemovePath\ze(" " file
|
||||
syn match Function "|\zsList\ze(" " list
|
||||
syn match Function "|\zsGetList\ze(" " list
|
||||
|
||||
" functions: help
|
||||
syn match Function "|\zsPrompt\ze("
|
||||
syn match Function "|\zsWord\ze("
|
||||
syn match Function "|\zsPattern\ze("
|
||||
syn match Function "|\zsDefault\ze("
|
||||
syn match Function "|\zsSubstitute\ze("
|
||||
syn match Function "|\zsLiteralSub\ze("
|
||||
syn match Function "|\zsSystem\ze("
|
||||
syn match Function "|\zsVim\ze("
|
||||
|
||||
" strings, macros, tags, jump targets
|
||||
syn match String "'\%([^']\|''\)*'"
|
||||
syn match String "\"\%([^\\]\|\\.\)*\""
|
||||
|
||||
syn match Tag "|?\?[a-zA-Z][a-zA-Z0-9_:]*|"
|
||||
syn match Tag "<CURSOR>\|{CURSOR}"
|
||||
syn match Tag "<SPLIT>"
|
||||
syn match Tag "<CONTENT>"
|
||||
|
||||
syn match Search "<\([+-]\)\w*\1>"
|
||||
syn match Search "{\([+-]\)\w*\1}"
|
||||
|
||||
let b:current_syntax = "template"
|
||||
@@ -1,2 +0,0 @@
|
||||
[global]
|
||||
break-system-packages = true
|
||||
@@ -1,4 +1,4 @@
|
||||
ext jpg = open -a Preview "$@"
|
||||
ext jpg = feh --scale-down "$@"
|
||||
#ext doc = openoffice4 "$@"
|
||||
#ext odt = openoffice4 "$@"
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
default-stream "1080p60,1080p,720p60,720p"
|
||||
default-stream best
|
||||
hls-live-edge 2
|
||||
hls-segment-stream-data
|
||||
player-no-close
|
||||
player=mpv
|
||||
retry-max 100
|
||||
retry-open 10
|
||||
retry-streams 10
|
||||
stream-segment-threads=4
|
||||
twitch-disable-ads
|
||||
twitch-low-latency
|
||||
+55
-410
@@ -5,31 +5,17 @@
|
||||
(setq package-enable-at-startup nil)
|
||||
(setq package-archives
|
||||
'(
|
||||
("melpa" . "https://melpa.org/packages/")
|
||||
("ELPA" . "http://tromey.com/elpa/")
|
||||
("gnu" . "http://elpa.gnu.org/packages/")
|
||||
("ORG" . "https://orgmode.org/elpa/")
|
||||
)
|
||||
("ELPA" . "http://tromey.com/elpa/")
|
||||
("gnu" . "http://elpa.gnu.org/packages/")
|
||||
("melpa" . "https://melpa.org/packages/")
|
||||
("ORG" . "https://orgmode.org/elpa/")
|
||||
)
|
||||
)
|
||||
(package-initialize)
|
||||
(setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3")
|
||||
|
||||
;; UTF-8
|
||||
(set-language-environment "UTF-8")
|
||||
|
||||
;; Remove welcome screen
|
||||
(setq inhibit-startup-screen t)
|
||||
|
||||
;; Disable menu
|
||||
(menu-bar-mode 0)
|
||||
|
||||
;; Remove working cl
|
||||
(require 'cl-lib)
|
||||
(setq byte-compile-warnings '(cl-functions))
|
||||
(advice-add 'sh-set-shell :around
|
||||
(lambda (orig-fun &rest args)
|
||||
(cl-letf (((symbol-function 'message) #'ignore))
|
||||
(apply orig-fun args))))
|
||||
|
||||
;; install use-package
|
||||
(unless (package-installed-p 'use-package)
|
||||
@@ -37,24 +23,6 @@
|
||||
(package-install 'use-package)
|
||||
)
|
||||
|
||||
;; Packages list refresh
|
||||
(when (not package-archive-contents)
|
||||
(package-refresh-contents))
|
||||
|
||||
;; Auto Package Update
|
||||
(use-package auto-package-update
|
||||
:ensure t
|
||||
:config
|
||||
(progn
|
||||
(setq
|
||||
auto-package-update-delete-old-verions t
|
||||
auto-package-update-interval 5
|
||||
)
|
||||
(auto-package-update-maybe)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
;; Set path to store "custom-set"
|
||||
(setq custom-file "~/.emacs.d/emacs-custom.el")
|
||||
|
||||
@@ -76,48 +44,14 @@
|
||||
(add-hook 'text-mode-hook 'auto-fill-mode)
|
||||
(setq-default fill-column 80)
|
||||
|
||||
(add-hook 'prog-mode-hook #'display-fill-column-indicator-mode)
|
||||
|
||||
; Global turn on flycheck
|
||||
(add-hook 'after-init-hook #'global-flycheck-mode)
|
||||
|
||||
; Org Files
|
||||
(add-hook 'org-mode-hook '(lambda () (setq fill-column 80)))
|
||||
(add-hook 'org-mode-hook 'auto-fill-mode)
|
||||
(add-hook 'org-mode-hook 'turn-on-flyspell)
|
||||
|
||||
;; Latex files
|
||||
(add-hook 'latex-mode-hook 'turn-on-flyspell)
|
||||
(setq ispell-dictionary "pl")
|
||||
|
||||
;; Broswer
|
||||
(setq browse-url-browser-function 'browse-url-generic
|
||||
browse-url-generic-program "browser-x")
|
||||
|
||||
;; Amx
|
||||
(use-package amx
|
||||
:ensure t
|
||||
:after ivy
|
||||
:custom
|
||||
(
|
||||
(amx-backend 'ivy)
|
||||
(amx-show-key-bindings t)
|
||||
)
|
||||
:config
|
||||
(amx-mode t)
|
||||
)
|
||||
|
||||
;; Counsel
|
||||
(use-package counsel
|
||||
:ensure t
|
||||
)
|
||||
|
||||
|
||||
|
||||
;; Custom theme
|
||||
(add-to-list 'custom-theme-load-path
|
||||
"~/.emacs.d/plugins/")
|
||||
|
||||
;; Switch-window
|
||||
(use-package switch-window
|
||||
:ensure t
|
||||
@@ -137,9 +71,7 @@
|
||||
)
|
||||
|
||||
;; Enable japanese
|
||||
(if (condition-case nil (require 'mozc)(error nil))
|
||||
(setq ecb-be-more-like-better-yes-p t)
|
||||
(message "Monz not available; not configuring") )
|
||||
(require 'mozc)
|
||||
(setq default-input-method "japanese-mozc")
|
||||
|
||||
;; reveal dependency
|
||||
@@ -161,47 +93,29 @@
|
||||
(global-set-key (kbd "M-<up>") 'move-text-up)
|
||||
(global-set-key (kbd "M-<down>") 'move-text-down)
|
||||
|
||||
;; company
|
||||
(use-package company
|
||||
;; AutoComlete
|
||||
(use-package auto-complete
|
||||
:ensure t
|
||||
)
|
||||
(global-company-mode)
|
||||
(ac-config-default)
|
||||
(global-auto-complete-mode t)
|
||||
|
||||
(setq company-dabbrev-downcase 0)
|
||||
(setq company-idle-delay 0)
|
||||
;; Company
|
||||
(eval-after-load 'company
|
||||
'(push 'company-robe company-backends))
|
||||
|
||||
;; Shell - bash
|
||||
(use-package flymake-shellcheck
|
||||
:ensure t
|
||||
)
|
||||
|
||||
(use-package flycheck-bashate
|
||||
:ensure t
|
||||
)
|
||||
|
||||
(require 'bash-completion)
|
||||
(bash-completion-setup)
|
||||
|
||||
(use-package flymake-shell
|
||||
:ensure t
|
||||
)
|
||||
|
||||
(require 'flymake-shell)
|
||||
(add-hook 'sh-set-shell-hook 'flymake-shell-load)
|
||||
|
||||
;; Default font
|
||||
(defun rc/get-default-font ()
|
||||
(cond
|
||||
((eq system-type 'windows-nt) "Consolas-13")
|
||||
((eq system-type 'gnu/linux) "xos4 Terminus (TTF) Medium 16")))
|
||||
|
||||
(add-to-list 'default-frame-alist `(font . ,(rc/get-default-font)))
|
||||
;; Ruby
|
||||
(eval-after-load 'auto-complete
|
||||
'(add-to-list 'ac-modes 'inf-ruby-mode))
|
||||
(add-hook 'inf-ruby-mode-hook 'ac-inf-ruby-enable)
|
||||
(eval-after-load 'inf-ruby '
|
||||
'(define-key inf-ruby-mode-map (kbd "TAB") 'auto-complete))
|
||||
|
||||
;; Theme
|
||||
;;(use-package gruvbox-theme
|
||||
;; :ensure t
|
||||
;; :config
|
||||
;; (load-theme 'gruvbox-dark-hard t))
|
||||
;(use-package gruber-darker-theme
|
||||
; :ensure t
|
||||
; :config
|
||||
; (load-theme 'gruber-darker-theme t))
|
||||
|
||||
(use-package dracula-theme
|
||||
:ensure t
|
||||
@@ -216,41 +130,18 @@
|
||||
(require 'dired-sidebar)
|
||||
(global-set-key (kbd "C-x d") 'dired-sidebar-toggle-sidebar)
|
||||
|
||||
;; Smex
|
||||
(require 'smex)
|
||||
(smex-initialize)
|
||||
(global-set-key (kbd "M-x") 'counsel-M-x)
|
||||
|
||||
;;buffer-move
|
||||
(require 'buffer-move)
|
||||
(global-set-key (kbd "C-x b") 'counsel-buffer-or-recentf)
|
||||
(global-set-key (kbd "<C-S-up>") 'buf-move-up)
|
||||
(global-set-key (kbd "<C-S-down>") 'buf-move-down)
|
||||
(global-set-key (kbd "<C-S-left>") 'buf-move-left)
|
||||
(global-set-key (kbd "<C-S-right>") 'buf-move-right)
|
||||
|
||||
;; Files
|
||||
(global-set-key (kbd "C-x C-f") 'counsel-find-file)
|
||||
|
||||
;; Multiple-cursors
|
||||
(use-package multiple-cursors
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(global-set-key (kbd "C-S-c C-S-c") 'mc/edit-lines)
|
||||
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
|
||||
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
|
||||
(global-set-key (kbd "C-c C-<") 'mc/mark-all-like-this)
|
||||
|
||||
;; Magit
|
||||
(use-package magit
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
(global-set-key (kbd "C-x g") 'magit-status)
|
||||
|
||||
;; Helpers for easily building Emacs flymake checkers.
|
||||
;; ruby sorce code
|
||||
(use-package flymake-ruby
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(use-package flymake-easy
|
||||
:ensure t
|
||||
:config
|
||||
@@ -261,22 +152,9 @@
|
||||
(define-key flymake-mode-map (kbd "M-p") 'flymake-goto-prev-error)
|
||||
|
||||
;; Ruby
|
||||
(use-package flymake-ruby
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
;;robe
|
||||
(use-package robe
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(require 'robe)
|
||||
(add-hook 'ruby-mode-hook 'robe-mode)
|
||||
(add-hook 'robe-mode-hook 'ac-robe-setup)
|
||||
(eval-after-load 'company
|
||||
'(push 'company-robe company-backends))
|
||||
|
||||
(require 'flymake-ruby)
|
||||
(add-hook 'ruby-mode-hook 'flymake-ruby-load)
|
||||
@@ -287,291 +165,59 @@
|
||||
:defer t)
|
||||
|
||||
;; YAML
|
||||
(require 'flymake-yaml)
|
||||
|
||||
(use-package yaml-mode
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
;; pip install --user yamllint
|
||||
(require 'flycheck-yamllint)
|
||||
(eval-after-load 'flycheck
|
||||
'(add-hook 'flycheck-mode-hook 'flycheck-yamllint-setup))
|
||||
|
||||
;; Ansible
|
||||
(use-package ansible
|
||||
:ensure t
|
||||
:config
|
||||
:mode
|
||||
(
|
||||
("\\.yml\\'" . yaml-mode)
|
||||
)
|
||||
|
||||
(use-package ansible-doc
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(use-package company-ansible
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(add-to-list 'company-backends 'company-ansible)
|
||||
(add-hook 'yaml-mode-hook '(lambda () (ansible 1)))
|
||||
(add-hook 'yaml-mode-hook #'ansible-doc-mode)
|
||||
:hook
|
||||
(
|
||||
(yaml-mode-hook . flymake-yaml-load)
|
||||
)
|
||||
)
|
||||
;; Git
|
||||
(global-set-key (kbd "C-x g") 'magit-status)
|
||||
|
||||
;; Markdown-mode
|
||||
(custom-set-variables
|
||||
'(markdown-command "/usr/bin/pandoc"))
|
||||
(use-package markdown-mode
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
;; C++ C
|
||||
(use-package auto-complete-clang
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
;; Apache
|
||||
(use-package apache-mode
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
;; Haskell
|
||||
(use-package haskell-mode
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(use-package flycheck-haskell
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
(add-hook 'flycheck-mode-hook #'flycheck-haskell-setup)
|
||||
|
||||
|
||||
;; Java
|
||||
;; lsp-install-server
|
||||
;; jdtls
|
||||
(use-package lsp-java
|
||||
:ensure t
|
||||
:config
|
||||
(global-set-key (kbd "C-.") 'lsp-execute-code-action)
|
||||
)
|
||||
|
||||
(global-set-key (kbd "<f9>") 'dap-breakpoint-toggle)
|
||||
(global-set-key (kbd "<f10>") 'dap-next)
|
||||
(global-set-key (kbd "<f11>") 'dap-step-in)
|
||||
(global-set-key (kbd "<f12>") 'lsp-jt-browser)
|
||||
(global-set-key (kbd "<C-f12>") 'dap-stop-thread)
|
||||
(global-set-key (kbd "<C-?>") 'comment-or-uncomment-region)
|
||||
|
||||
(add-hook 'dap-stopped-hook
|
||||
(lambda (arg) (call-interactively #'dap-hydra)))
|
||||
|
||||
(setq dap-auto-configure-features '(sessions locals controls tooltip))
|
||||
|
||||
|
||||
(require 'lsp-java)
|
||||
(add-hook 'java-mode-hook #'lsp)
|
||||
|
||||
(require 'dap-java)
|
||||
|
||||
;; Treemacs
|
||||
(use-package treemacs
|
||||
:ensure t
|
||||
:defer t
|
||||
:init
|
||||
(with-eval-after-load 'winum
|
||||
(define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
|
||||
:config
|
||||
(progn
|
||||
(setq treemacs-collapse-dirs (if treemacs-python-executable 3 0)
|
||||
treemacs-deferred-git-apply-delay 0.5
|
||||
treemacs-directory-name-transformer #'identity
|
||||
treemacs-display-in-side-window t
|
||||
treemacs-eldoc-display t
|
||||
treemacs-file-event-delay 5000
|
||||
treemacs-file-extension-regex treemacs-last-period-regex-value
|
||||
treemacs-file-follow-delay 0.2
|
||||
treemacs-file-name-transformer #'identity
|
||||
treemacs-follow-after-init t
|
||||
treemacs-git-command-pipe ""
|
||||
treemacs-goto-tag-strategy 'refetch-index
|
||||
treemacs-indentation 2
|
||||
treemacs-indentation-string " "
|
||||
treemacs-is-never-other-window nil
|
||||
treemacs-max-git-entries 5000
|
||||
treemacs-missing-project-action 'ask
|
||||
treemacs-move-forward-on-expand nil
|
||||
treemacs-no-png-images nil
|
||||
treemacs-no-delete-other-windows t
|
||||
treemacs-project-follow-cleanup nil
|
||||
treemacs-persist-file (expand-file-name ".cache/treemacs-persist" user-emacs-directory)
|
||||
treemacs-position 'left
|
||||
treemacs-read-string-input 'from-child-frame
|
||||
treemacs-recenter-distance 0.1
|
||||
treemacs-recenter-after-file-follow nil
|
||||
treemacs-recenter-after-tag-follow nil
|
||||
treemacs-recenter-after-project-jump 'always
|
||||
treemacs-recenter-after-project-expand 'on-distance
|
||||
treemacs-show-cursor nil
|
||||
treemacs-show-hidden-files t
|
||||
treemacs-silent-filewatch nil
|
||||
treemacs-silent-refresh nil
|
||||
treemacs-sorting 'alphabetic-asc
|
||||
treemacs-space-between-root-nodes t
|
||||
treemacs-tag-follow-cleanup t
|
||||
treemacs-tag-follow-delay 1.5
|
||||
treemacs-user-mode-line-format nil
|
||||
treemacs-user-header-line-format nil
|
||||
treemacs-width 35
|
||||
treemacs-workspace-switch-cleanup nil)
|
||||
|
||||
;; The default width and height of the icons is 22 pixels. If you are
|
||||
;; using a Hi-DPI display, uncomment this to double the icon size.
|
||||
;;(treemacs-resize-icons 44)
|
||||
|
||||
(treemacs-follow-mode t)
|
||||
(treemacs-filewatch-mode t)
|
||||
(treemacs-fringe-indicator-mode 'always)
|
||||
(pcase (cons (not (null (executable-find "git")))
|
||||
(not (null treemacs-python-executable)))
|
||||
(`(t . t)
|
||||
(treemacs-git-mode 'deferred))
|
||||
(`(t . _)
|
||||
(treemacs-git-mode 'simple))))
|
||||
:bind
|
||||
(:map global-map
|
||||
("M-0" . treemacs-select-window)
|
||||
("C-x t 1" . treemacs-delete-other-windows)
|
||||
("C-x t t" . treemacs)
|
||||
("C-x t B" . treemacs-bookmark)
|
||||
("C-x t C-t" . treemacs-find-file)
|
||||
("C-x t M-t" . treemacs-find-tag)))
|
||||
|
||||
(use-package treemacs-evil
|
||||
:after treemacs evil
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-projectile
|
||||
:after treemacs projectile
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-icons-dired
|
||||
:after treemacs dired
|
||||
:ensure t
|
||||
:config (treemacs-icons-dired-mode))
|
||||
|
||||
(use-package treemacs-magit
|
||||
:after treemacs magit
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-persp ;;treemacs-perspective if you use perspective.el vs. persp-mode
|
||||
:after treemacs persp-mode ;;or perspective vs. persp-mode
|
||||
:ensure t
|
||||
:config (treemacs-set-scope-type 'Perspectives))
|
||||
|
||||
;; Python
|
||||
(setq python-shell-interpreter "python3")
|
||||
(setq py-python-command "/usr/bin/python3")
|
||||
(use-package company-jedi
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(defun my/python-mode-hook ()
|
||||
(add-to-list 'company-backends 'company-jedi))
|
||||
|
||||
(add-hook 'python-mode-hook 'my/python-mode-hook)
|
||||
|
||||
(setq-default ebuild-mode-update-copyright nil)
|
||||
|
||||
(setq jedi:environment-root "jedi") ; or any other name you like
|
||||
(setq jedi:environment-virtualenv
|
||||
(append python-environment-virtualenv
|
||||
'("--python" "/usr/local/bin/python3")))
|
||||
|
||||
(defun infer-indentation-style () (interactive)
|
||||
(let ((space-count (how-many "^ " (point-min) (point-max)))
|
||||
(tab-count (how-many "^\t" (point-min) (point-max))))
|
||||
(if (> space-count tab-count) (setq indent-tabs-mode nil))
|
||||
(if (> tab-count space-count) (setq indent-tabs-mode t))))
|
||||
|
||||
(add-hook 'python-mode-hook
|
||||
(lambda ()
|
||||
(if indent-tabs-mode
|
||||
(setq tab-width 4
|
||||
python-indent-offset 4))))
|
||||
(add-hook 'python-mode-hook 'infer-indentation-style)
|
||||
|
||||
;; python-black
|
||||
(use-package python-black
|
||||
:demand t
|
||||
:after python)
|
||||
;; Livedown
|
||||
;;; sudo npm install -g livedown
|
||||
;;; (add-to-list 'load-path (expand-file-name "~/.emacs.d/emacs-livedown"))
|
||||
(require 'livedown)
|
||||
|
||||
(custom-set-variables
|
||||
'(livedown-autostart nil) ; automatically open preview when opening markdown files
|
||||
'(livedown-open t) ; automatically open the browser window
|
||||
'(livedown-port 1337) ; port for livedown server
|
||||
'(livedown-browser nil)) ; browser to use
|
||||
(global-set-key (kbd "C-M-m") 'livedown-preview)
|
||||
|
||||
;;; --- Look & Feel ---
|
||||
|
||||
;; Org-bullets
|
||||
|
||||
(use-package org-bullets
|
||||
:ensure t
|
||||
:config
|
||||
:after org
|
||||
:hook (org-mode . org-bullets-mode)
|
||||
:custom
|
||||
(org-bullets-bullet-list '("◉" "○" "●" "○" "●" "○" "●")))
|
||||
|
||||
;; Helm
|
||||
(use-package helm
|
||||
:ensure t
|
||||
:config
|
||||
)
|
||||
|
||||
(add-hook 'helm-minibuffer-set-up-hook
|
||||
'helm-hide-minibuffer-maybe)
|
||||
|
||||
(setq helm-autoresize-max-height 0)
|
||||
(setq helm-autoresize-min-height 20)
|
||||
|
||||
(helm-autoresize-mode 1)
|
||||
(helm-mode 1)
|
||||
|
||||
;; Disable scroll bar
|
||||
;; no toolbar:
|
||||
(if (display-graphic-p)
|
||||
(progn
|
||||
(tool-bar-mode -1)
|
||||
(scroll-bar-mode -1)))
|
||||
|
||||
;; Copy
|
||||
(setq select-active-regions nil)
|
||||
(setq mouse-drag-copy-region t)
|
||||
(global-set-key [mouse-2] 'mouse-yank-at-click)
|
||||
|
||||
;; Zoom in/out.
|
||||
(global-set-key (kbd "M-+") 'text-scale-increase)
|
||||
(global-set-key (kbd "M--") 'text-scale-decrease)
|
||||
|
||||
;; no toolbar:
|
||||
(tool-bar-mode -1)
|
||||
|
||||
;; line numbers:
|
||||
(global-display-line-numbers-mode 1)
|
||||
|
||||
;; scrolling:
|
||||
(setq scroll-conservatively 100)
|
||||
|
||||
;; Whitespaces
|
||||
(global-whitespace-mode 1)
|
||||
(setq whitespace-display-mappings '((space-mark 32 [?·])))
|
||||
(set-face-attribute 'whitespace-space nil :background nil :foreground "gray30")
|
||||
(setq whitespace-style (quote (face tabs spaces trailing space-before-tab newline indentation empty space-after-tab space-mark tab-mark)))
|
||||
(add-hook 'before-save-hook (lambda () (delete-trailing-whitespace)))
|
||||
|
||||
;; no "bell" (audible notification):
|
||||
(setq ring-bell-function 'ignore)
|
||||
|
||||
;; highlight:
|
||||
;(global-hl-line-mode 1)
|
||||
|
||||
;; auto reloading (reverting) buffers
|
||||
(global-auto-revert-mode 1)
|
||||
|
||||
@@ -625,4 +271,3 @@
|
||||
(other-window 1)
|
||||
)
|
||||
(global-set-key (kbd "C-x x") 'kill-and-remove-split)
|
||||
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,138 +0,0 @@
|
||||
;;; buffer-move.el ---
|
||||
|
||||
;; Copyright (C) 2004-2014 Lucas Bonnet <lucas@rincevent.net.fr>
|
||||
|
||||
;; Author: Lucas Bonnet <lucas@rincevent.net>
|
||||
;; Keywords: lisp,convenience
|
||||
;; Version: 0.5
|
||||
;; URL : https://github.com/lukhas/buffer-move
|
||||
|
||||
;; This program is free software; you can redistribute it and/or
|
||||
;; modify it under the terms of the GNU General Public License
|
||||
;; as published by the Free Software Foundation; either version 2
|
||||
;; of the License, or (at your option) any later version.
|
||||
|
||||
;; This program is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with this program; if not, write to the Free Software
|
||||
;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||
;; 02111-1307, USA.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; This file is for lazy people wanting to swap buffers without
|
||||
;; typing C-x b on each window. This is useful when you have :
|
||||
|
||||
;; +--------------+-------------+
|
||||
;; | | |
|
||||
;; | #emacs | #gnus |
|
||||
;; | | |
|
||||
;; +--------------+-------------+
|
||||
;; | |
|
||||
;; | .emacs |
|
||||
;; | |
|
||||
;; +----------------------------+
|
||||
|
||||
;; and you want to have :
|
||||
|
||||
;; +--------------+-------------+
|
||||
;; | | |
|
||||
;; | #gnus | .emacs |
|
||||
;; | | |
|
||||
;; +--------------+-------------+
|
||||
;; | |
|
||||
;; | #emacs |
|
||||
;; | |
|
||||
;; +----------------------------+
|
||||
|
||||
;; With buffer-move, just go in #gnus, do buf-move-left, go to #emacs
|
||||
;; (which now should be on top right) and do buf-move-down.
|
||||
|
||||
;; To use it, simply put a (require 'buffer-move) in your ~/.emacs and
|
||||
;; define some keybindings. For example, i use :
|
||||
|
||||
;; (global-set-key (kbd "<C-S-up>") 'buf-move-up)
|
||||
;; (global-set-key (kbd "<C-S-down>") 'buf-move-down)
|
||||
;; (global-set-key (kbd "<C-S-left>") 'buf-move-left)
|
||||
;; (global-set-key (kbd "<C-S-right>") 'buf-move-right)
|
||||
|
||||
|
||||
;;; Code:
|
||||
|
||||
|
||||
(require 'windmove)
|
||||
|
||||
;;;###autoload
|
||||
(defun buf-move-up ()
|
||||
"Swap the current buffer and the buffer above the split.
|
||||
If there is no split, ie now window above the current one, an
|
||||
error is signaled."
|
||||
;; "Switches between the current buffer, and the buffer above the
|
||||
;; split, if possible."
|
||||
(interactive)
|
||||
(let* ((other-win (windmove-find-other-window 'up))
|
||||
(buf-this-buf (window-buffer (selected-window))))
|
||||
(if (null other-win)
|
||||
(error "No window above this one")
|
||||
;; swap top with this one
|
||||
(set-window-buffer (selected-window) (window-buffer other-win))
|
||||
;; move this one to top
|
||||
(set-window-buffer other-win buf-this-buf)
|
||||
(select-window other-win))))
|
||||
|
||||
;;;###autoload
|
||||
(defun buf-move-down ()
|
||||
"Swap the current buffer and the buffer under the split.
|
||||
If there is no split, ie now window under the current one, an
|
||||
error is signaled."
|
||||
(interactive)
|
||||
(let* ((other-win (windmove-find-other-window 'down))
|
||||
(buf-this-buf (window-buffer (selected-window))))
|
||||
(if (or (null other-win)
|
||||
(string-match "^ \\*Minibuf" (buffer-name (window-buffer other-win))))
|
||||
(error "No window under this one")
|
||||
;; swap top with this one
|
||||
(set-window-buffer (selected-window) (window-buffer other-win))
|
||||
;; move this one to top
|
||||
(set-window-buffer other-win buf-this-buf)
|
||||
(select-window other-win))))
|
||||
|
||||
;;;###autoload
|
||||
(defun buf-move-left ()
|
||||
"Swap the current buffer and the buffer on the left of the split.
|
||||
If there is no split, ie now window on the left of the current
|
||||
one, an error is signaled."
|
||||
(interactive)
|
||||
(let* ((other-win (windmove-find-other-window 'left))
|
||||
(buf-this-buf (window-buffer (selected-window))))
|
||||
(if (null other-win)
|
||||
(error "No left split")
|
||||
;; swap top with this one
|
||||
(set-window-buffer (selected-window) (window-buffer other-win))
|
||||
;; move this one to top
|
||||
(set-window-buffer other-win buf-this-buf)
|
||||
(select-window other-win))))
|
||||
|
||||
;;;###autoload
|
||||
(defun buf-move-right ()
|
||||
"Swap the current buffer and the buffer on the right of the split.
|
||||
If there is no split, ie now window on the right of the current
|
||||
one, an error is signaled."
|
||||
(interactive)
|
||||
(let* ((other-win (windmove-find-other-window 'right))
|
||||
(buf-this-buf (window-buffer (selected-window))))
|
||||
(if (null other-win)
|
||||
(error "No right split")
|
||||
;; swap top with this one
|
||||
(set-window-buffer (selected-window) (window-buffer other-win))
|
||||
;; move this one to top
|
||||
(set-window-buffer other-win buf-this-buf)
|
||||
(select-window other-win))))
|
||||
|
||||
|
||||
(provide 'buffer-move)
|
||||
;;; buffer-move.el ends here
|
||||
@@ -1,58 +0,0 @@
|
||||
;;; flycheck-yamllint.el --- Flycheck integration for YAMLLint
|
||||
|
||||
;; Copyright (c) 2017 Krzysztof Magosa
|
||||
|
||||
;; Author: Krzysztof Magosa <krzysztof@magosa.pl>
|
||||
;; URL: https://github.com/krzysztof-magosa/flycheck-yamllint
|
||||
;; Package-Requires: ((flycheck "30"))
|
||||
;; Created: 25 March 2017
|
||||
;; Version: 0.1.0
|
||||
;; Keywords: convenience, languages, tools
|
||||
|
||||
;; Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
;; of this software and associated documentation files (the "Software"), to deal
|
||||
;; in the Software without restriction, including without limitation the rights
|
||||
;; to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
;; copies of the Software, and to permit persons to whom the Software is
|
||||
;; furnished to do so, subject to the following conditions:
|
||||
|
||||
;; The above copyright notice and this permission notice shall be included in all
|
||||
;; copies or substantial portions of the Software.
|
||||
|
||||
;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
;; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
;; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
;; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
;; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
;; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
;; SOFTWARE.
|
||||
|
||||
;;; Commentary:
|
||||
;;
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'flycheck)
|
||||
|
||||
(flycheck-def-config-file-var flycheck-yamllintrc yaml-yamllint ".yamllint"
|
||||
:safe #'stringp)
|
||||
|
||||
(flycheck-define-checker yaml-yamllint
|
||||
"A YAML syntax checker using YAMLLint.
|
||||
|
||||
See URL `https://github.com/adrienverge/yamllint'."
|
||||
:command ("yamllint" "-f" "parsable" source (config-file "-c" flycheck-yamllintrc))
|
||||
:error-patterns
|
||||
((error line-start (file-name) ":" line ":" column ": [error] " (message) line-end)
|
||||
(warning line-start (file-name) ":" line ":" column ": [warning] " (message) line-end))
|
||||
:modes yaml-mode)
|
||||
|
||||
;;;###autoload
|
||||
(defun flycheck-yamllint-setup ()
|
||||
"Setup Flycheck YAMLLint integration."
|
||||
(interactive)
|
||||
(add-to-list 'flycheck-checkers 'yaml-yamllint))
|
||||
|
||||
|
||||
(provide 'flycheck-yamllint)
|
||||
;;; flycheck-yamllint.el ends here
|
||||
@@ -1,68 +0,0 @@
|
||||
;;; flymake-yaml.el --- A flymake handler for YAML
|
||||
|
||||
;; Copyright (C) 2013 Yasuyuki Oka
|
||||
|
||||
;; Author: Yasuyuki Oka <yasuyk@gmail.com>
|
||||
;; Version: 0.0.2
|
||||
;; URL: https://github.com/yasuyk/flymake-yaml
|
||||
;; Package-Requires: ((flymake-easy "0.1"))
|
||||
;; Keywords: yaml
|
||||
|
||||
;; This program is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation, either version 3 of the License, or
|
||||
;; (at your option) any later version.
|
||||
|
||||
;; This program is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Commentary:
|
||||
;;
|
||||
;; Based in part on http://d.hatena.ne.jp/kitokitoki/20120306/p1
|
||||
;;
|
||||
;; Usage:
|
||||
;;
|
||||
;; (require 'flymake-yaml) ;; Not necessary if using ELPA package
|
||||
;; (add-hook 'yaml-mode-hook 'flymake-yaml-load)
|
||||
;;
|
||||
;; Uses flymake-easy, from https://github.com/purcell/flymake-easy
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'flymake-easy)
|
||||
|
||||
(defconst flymake-yaml-err-line-patterns
|
||||
;; Syck error message
|
||||
'(("syntax error on line \\([0-9]+\\), col \\([0-9]+\\): `\\(.*\\)'" nil 1 2 3)
|
||||
;; Psych error message
|
||||
(".*: \\(.*\\) at line \\([0-9]+\\) column \\([0-9]+\\)" nil 2 3 1)))
|
||||
|
||||
(defun flymake-yaml-command (filename)
|
||||
"Construct a command that flymake can use to check yaml source.
|
||||
Argument FILENAME
|
||||
YAML file name."
|
||||
(list "ruby" "-ryaml" "-e" "YAML.load(ARGF) rescue warn $!" filename))
|
||||
|
||||
;;;###autoload
|
||||
(defun flymake-yaml-load ()
|
||||
"Configure flymake mode to check the current buffer's YAML syntax."
|
||||
(interactive)
|
||||
(when (eq major-mode 'yaml-mode)
|
||||
(flymake-easy-load 'flymake-yaml-command
|
||||
flymake-yaml-err-line-patterns
|
||||
'tempdir
|
||||
"yml")))
|
||||
|
||||
(provide 'flymake-yaml)
|
||||
|
||||
;; Local Variables:
|
||||
;; coding: utf-8
|
||||
;; eval: (checkdoc-minor-mode 1)
|
||||
;; End:
|
||||
|
||||
;;; flymake-yaml.el ends here
|
||||
@@ -1,27 +0,0 @@
|
||||
;;; latexmk-mode.el --- LatexMK minor mode
|
||||
;;; Commentary:
|
||||
;;; none
|
||||
;;; Code:
|
||||
|
||||
(define-minor-mode latexmk-mode
|
||||
"Toggle LatexMK mode."
|
||||
:init-value nil
|
||||
:lighter " LatexMK "
|
||||
)
|
||||
|
||||
(defun my/run-latexmk ()
|
||||
(interactive)
|
||||
(start-process "latexmk" "latexmk out" "latexmk" "--silent" "--pdf" (buffer-file-name (current-buffer)))
|
||||
)
|
||||
|
||||
(defun my/try-run-latexmk ()
|
||||
"Try to run latexmk."
|
||||
|
||||
(if (bound-and-true-p latexmk-mode)
|
||||
(my/run-latexmk)
|
||||
)
|
||||
)
|
||||
|
||||
(add-hook 'after-save-hook 'my/try-run-latexmk)
|
||||
(add-hook 'latex-mode-hook 'latexmk-mode)
|
||||
;;; latexmk-mode.el ends here
|
||||
@@ -1,483 +0,0 @@
|
||||
;;; smex.el --- M-x interface with Ido-style fuzzy matching. -*- lexical-binding: t; -*-
|
||||
|
||||
;; Copyright (C) 2009-2014 Cornelius Mika and contributors
|
||||
;;
|
||||
;; Author: Cornelius Mika <cornelius.mika@gmail.com> and contributors
|
||||
;; URL: http://github.com/nonsequitur/smex/
|
||||
;; Package-Requires: ((emacs "24"))
|
||||
;; Version: 3.0
|
||||
;; Keywords: convenience, usability
|
||||
|
||||
;; This file is not part of GNU Emacs.
|
||||
|
||||
;;; License:
|
||||
|
||||
;; Licensed under the same terms as Emacs.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; Quick start:
|
||||
;; run (smex-initialize)
|
||||
;;
|
||||
;; Bind the following commands:
|
||||
;; smex, smex-major-mode-commands
|
||||
;;
|
||||
;; For a detailed introduction see:
|
||||
;; http://github.com/nonsequitur/smex/blob/master/README.markdown
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'ido)
|
||||
|
||||
(defgroup smex nil
|
||||
"M-x interface with Ido-style fuzzy matching and ranking heuristics."
|
||||
:group 'extensions
|
||||
:group 'convenience
|
||||
:link '(emacs-library-link :tag "Lisp File" "smex.el"))
|
||||
|
||||
(defcustom smex-auto-update t
|
||||
"If non-nil, `Smex' checks for new commands each time it is run.
|
||||
Turn it off for minor speed improvements on older systems."
|
||||
:type 'boolean
|
||||
:group 'smex)
|
||||
|
||||
(defcustom smex-save-file (locate-user-emacs-file "smex-items" ".smex-items")
|
||||
"File in which the smex state is saved between Emacs sessions.
|
||||
Variables stored are: `smex-data', `smex-history'.
|
||||
Must be set before initializing Smex."
|
||||
:type 'string
|
||||
:group 'smex)
|
||||
|
||||
(defcustom smex-history-length 7
|
||||
"Determines on how many recently executed commands
|
||||
Smex should keep a record.
|
||||
Must be set before initializing Smex."
|
||||
:type 'integer
|
||||
:group 'smex)
|
||||
|
||||
(defcustom smex-prompt-string "M-x "
|
||||
"String to display in the Smex prompt."
|
||||
:type 'string
|
||||
:group 'smex)
|
||||
|
||||
(defcustom smex-flex-matching t
|
||||
"Enables Ido flex matching. On by default.
|
||||
Set this to nil to disable fuzzy matching."
|
||||
:type 'boolean
|
||||
:group 'smex)
|
||||
|
||||
(defvar smex-initialized-p nil)
|
||||
(defvar smex-cache)
|
||||
(defvar smex-ido-cache)
|
||||
(defvar smex-data)
|
||||
(defvar smex-history)
|
||||
(defvar smex-command-count 0)
|
||||
(defvar smex-custom-action nil)
|
||||
|
||||
;; Check if Smex is supported
|
||||
(when (equal (cons 1 1)
|
||||
(ignore-errors
|
||||
(subr-arity (symbol-function 'execute-extended-command))))
|
||||
(error "Your Emacs has a non-elisp version of `execute-extended-command', which is incompatible with Smex"))
|
||||
|
||||
;;--------------------------------------------------------------------------------
|
||||
;; Smex Interface
|
||||
|
||||
;;;###autoload
|
||||
(defun smex ()
|
||||
(interactive)
|
||||
(unless smex-initialized-p
|
||||
(smex-initialize))
|
||||
(if (smex-already-running)
|
||||
(smex-update-and-rerun)
|
||||
(and smex-auto-update
|
||||
(smex-detect-new-commands)
|
||||
(smex-update))
|
||||
(smex-read-and-run smex-ido-cache)))
|
||||
|
||||
(defun smex-already-running ()
|
||||
(and (boundp 'ido-choice-list)
|
||||
(eql ido-choice-list smex-ido-cache)
|
||||
(minibuffer-window-active-p (selected-window))))
|
||||
|
||||
(defun smex-update-and-rerun ()
|
||||
(smex-do-with-selected-item
|
||||
(lambda (_) (smex-update) (smex-read-and-run smex-ido-cache ido-text))))
|
||||
|
||||
(defun smex-read-and-run (commands &optional initial-input)
|
||||
(let* ((chosen-item-name (smex-completing-read commands initial-input))
|
||||
(chosen-item (intern chosen-item-name)))
|
||||
(if smex-custom-action
|
||||
(let ((action smex-custom-action))
|
||||
(setq smex-custom-action nil)
|
||||
(funcall action chosen-item))
|
||||
(unwind-protect
|
||||
(with-no-warnings ; Don't warn about interactive use of `execute-extended-command'
|
||||
(execute-extended-command current-prefix-arg chosen-item-name))
|
||||
(smex-rank chosen-item)))))
|
||||
|
||||
;;;###autoload
|
||||
(defun smex-major-mode-commands ()
|
||||
"Like `smex', but limited to commands that are relevant to the active major mode."
|
||||
(interactive)
|
||||
(unless smex-initialized-p
|
||||
(smex-initialize))
|
||||
(let ((commands (delete-dups (append (smex-extract-commands-from-keymap (current-local-map))
|
||||
(smex-extract-commands-from-features major-mode)))))
|
||||
(setq commands (smex-sort-according-to-cache commands))
|
||||
(setq commands (mapcar #'symbol-name commands))
|
||||
(smex-read-and-run commands)))
|
||||
|
||||
(defun smex-completing-read (choices initial-input)
|
||||
(let ((ido-completion-map ido-completion-map)
|
||||
(ido-setup-hook (cons 'smex-prepare-ido-bindings ido-setup-hook))
|
||||
(ido-enable-prefix nil)
|
||||
(ido-enable-flex-matching smex-flex-matching)
|
||||
(ido-max-prospects 10)
|
||||
(minibuffer-completion-table choices))
|
||||
(ido-completing-read (smex-prompt-with-prefix-arg) choices nil nil
|
||||
initial-input 'extended-command-history (car choices))))
|
||||
|
||||
(defun smex-prompt-with-prefix-arg ()
|
||||
(if (not current-prefix-arg)
|
||||
smex-prompt-string
|
||||
(concat
|
||||
(if (eq current-prefix-arg '-)
|
||||
"- "
|
||||
(if (integerp current-prefix-arg)
|
||||
(format "%d " current-prefix-arg)
|
||||
(if (= (car current-prefix-arg) 4)
|
||||
"C-u "
|
||||
(format "%d " (car current-prefix-arg)))))
|
||||
smex-prompt-string)))
|
||||
|
||||
(defun smex-prepare-ido-bindings ()
|
||||
(define-key ido-completion-map (kbd "TAB") 'minibuffer-complete)
|
||||
(define-key ido-completion-map (kbd "C-h f") 'smex-describe-function)
|
||||
(define-key ido-completion-map (kbd "C-h w") 'smex-where-is)
|
||||
(define-key ido-completion-map (kbd "M-.") 'smex-find-function)
|
||||
(define-key ido-completion-map (kbd "C-a") 'move-beginning-of-line))
|
||||
|
||||
;;--------------------------------------------------------------------------------
|
||||
;; Cache and Maintenance
|
||||
|
||||
(defun smex-rebuild-cache ()
|
||||
(interactive)
|
||||
(setq smex-cache nil)
|
||||
|
||||
;; Build up list 'new-commands' and later put it at the end of 'smex-cache'.
|
||||
;; This speeds up sorting.
|
||||
(let (new-commands)
|
||||
(mapatoms (lambda (symbol)
|
||||
(when (commandp symbol)
|
||||
(let ((known-command (assq symbol smex-data)))
|
||||
(if known-command
|
||||
(setq smex-cache (cons known-command smex-cache))
|
||||
(setq new-commands (cons (list symbol) new-commands)))))))
|
||||
(if (eq (length smex-cache) 0)
|
||||
(setq smex-cache new-commands)
|
||||
(setcdr (last smex-cache) new-commands)))
|
||||
|
||||
(setq smex-cache (sort smex-cache 'smex-sorting-rules))
|
||||
(smex-restore-history)
|
||||
(setq smex-ido-cache (smex-convert-for-ido smex-cache)))
|
||||
|
||||
(defun smex-convert-for-ido (command-items)
|
||||
(mapcar (lambda (command-item) (symbol-name (car command-item))) command-items))
|
||||
|
||||
(defun smex-restore-history ()
|
||||
"Rearranges `smex-cache' according to `smex-history'"
|
||||
(if (> (length smex-history) smex-history-length)
|
||||
(setcdr (nthcdr (- smex-history-length 1) smex-history) nil))
|
||||
(mapc (lambda (command)
|
||||
(unless (eq command (caar smex-cache))
|
||||
(let ((command-cell-position (smex-detect-position
|
||||
smex-cache
|
||||
(lambda (cell)
|
||||
(eq command (caar cell))))))
|
||||
(when command-cell-position
|
||||
(let ((command-cell (smex-remove-nth-cell
|
||||
command-cell-position smex-cache)))
|
||||
(setcdr command-cell smex-cache)
|
||||
(setq smex-cache command-cell))))))
|
||||
(reverse smex-history)))
|
||||
|
||||
(defun smex-sort-according-to-cache (list)
|
||||
"Sorts a list of commands by their order in `smex-cache'"
|
||||
(let (sorted)
|
||||
(dolist (command-item smex-cache)
|
||||
(let ((command (car command-item)))
|
||||
(when (memq command list)
|
||||
(setq sorted (cons command sorted))
|
||||
(setq list (delq command list)))))
|
||||
(nreverse (append list sorted))))
|
||||
|
||||
(defun smex-update ()
|
||||
(interactive)
|
||||
(smex-save-history)
|
||||
(smex-rebuild-cache))
|
||||
|
||||
(defun smex-detect-new-commands ()
|
||||
(let ((i 0))
|
||||
(mapatoms (lambda (symbol) (if (commandp symbol) (setq i (1+ i)))))
|
||||
(unless (= i smex-command-count)
|
||||
(setq smex-command-count i))))
|
||||
|
||||
(defun smex-auto-update (&optional idle-time)
|
||||
"Update Smex when Emacs has been idle for IDLE-TIME."
|
||||
(unless idle-time (setq idle-time 60))
|
||||
(run-with-idle-timer idle-time t
|
||||
'(lambda () (if (smex-detect-new-commands) (smex-update)))))
|
||||
|
||||
;;;###autoload
|
||||
(defun smex-initialize ()
|
||||
(interactive)
|
||||
(unless ido-mode (smex-initialize-ido))
|
||||
(smex-load-save-file)
|
||||
(smex-detect-new-commands)
|
||||
(smex-rebuild-cache)
|
||||
(add-hook 'kill-emacs-hook 'smex-save-to-file)
|
||||
(setq smex-initialized-p t))
|
||||
|
||||
(defun smex-initialize-ido ()
|
||||
"Sets up a minimal Ido environment for `ido-completing-read'."
|
||||
(with-no-warnings ; `ido-init-completion-maps' is deprecated in Emacs 25
|
||||
(ido-init-completion-maps))
|
||||
(add-hook 'minibuffer-setup-hook 'ido-minibuffer-setup))
|
||||
|
||||
(defsubst smex-save-file-not-empty-p ()
|
||||
(string-match-p "\[^[:space:]\]" (buffer-string)))
|
||||
|
||||
(defun smex-load-save-file ()
|
||||
"Loads `smex-history' and `smex-data' from `smex-save-file'"
|
||||
(let ((save-file (expand-file-name smex-save-file)))
|
||||
(if (file-readable-p save-file)
|
||||
(with-temp-buffer
|
||||
(insert-file-contents save-file)
|
||||
(condition-case nil
|
||||
(setq smex-history (read (current-buffer))
|
||||
smex-data (read (current-buffer)))
|
||||
(error (if (smex-save-file-not-empty-p)
|
||||
(error "Invalid data in smex-save-file (%s). Can't restore history."
|
||||
smex-save-file)
|
||||
(unless (boundp 'smex-history) (setq smex-history nil))
|
||||
(unless (boundp 'smex-data) (setq smex-data nil))))))
|
||||
(setq smex-history nil smex-data nil))))
|
||||
|
||||
(defun smex-save-history ()
|
||||
"Updates `smex-history'"
|
||||
(setq smex-history nil)
|
||||
(let ((cell smex-cache))
|
||||
(dotimes (_ smex-history-length)
|
||||
(setq smex-history (cons (caar cell) smex-history))
|
||||
(setq cell (cdr cell))))
|
||||
(setq smex-history (nreverse smex-history)))
|
||||
|
||||
(defmacro smex-pp (list-var)
|
||||
`(smex-pp* ,list-var ,(symbol-name list-var)))
|
||||
|
||||
(defun smex-save-to-file ()
|
||||
(interactive)
|
||||
(smex-save-history)
|
||||
(with-temp-file (expand-file-name smex-save-file)
|
||||
(smex-pp smex-history)
|
||||
(smex-pp smex-data)))
|
||||
|
||||
;;--------------------------------------------------------------------------------
|
||||
;; Ranking
|
||||
|
||||
(defun smex-sorting-rules (command-item other-command-item)
|
||||
"Returns true if COMMAND-ITEM should sort before OTHER-COMMAND-ITEM."
|
||||
(let* ((count (or (cdr command-item ) 0))
|
||||
(other-count (or (cdr other-command-item) 0))
|
||||
(name (car command-item))
|
||||
(other-name (car other-command-item))
|
||||
(length (length (symbol-name name)))
|
||||
(other-length (length (symbol-name other-name))))
|
||||
(or (> count other-count) ; 1. Frequency of use
|
||||
(and (= count other-count)
|
||||
(or (< length other-length) ; 2. Command length
|
||||
(and (= length other-length)
|
||||
(string< name other-name))))))) ; 3. Alphabetical order
|
||||
|
||||
(defun smex-rank (command)
|
||||
(let ((command-item (or (assq command smex-cache)
|
||||
;; Update caches and try again if not found.
|
||||
(progn (smex-update)
|
||||
(assq command smex-cache)))))
|
||||
(when command-item
|
||||
(smex-update-counter command-item)
|
||||
|
||||
;; Don't touch the cache order if the chosen command
|
||||
;; has just been execucted previously.
|
||||
(unless (eq command-item (car smex-cache))
|
||||
(let (command-cell
|
||||
(pos (smex-detect-position smex-cache (lambda (cell)
|
||||
(eq command-item (car cell))))))
|
||||
;; Remove the just executed command.
|
||||
(setq command-cell (smex-remove-nth-cell pos smex-cache))
|
||||
;; And put it on top of the cache.
|
||||
(setcdr command-cell smex-cache)
|
||||
(setq smex-cache command-cell)
|
||||
|
||||
;; Repeat the same for the ido cache. Should this be DRYed?
|
||||
(setq command-cell (smex-remove-nth-cell pos smex-ido-cache))
|
||||
(setcdr command-cell smex-ido-cache)
|
||||
(setq smex-ido-cache command-cell)
|
||||
|
||||
;; Now put the last history item back to its normal place.
|
||||
(smex-sort-item-at smex-history-length))))))
|
||||
|
||||
(defun smex-update-counter (command-item)
|
||||
(let ((count (cdr command-item)))
|
||||
(setcdr command-item
|
||||
(if count
|
||||
(1+ count)
|
||||
;; Else: Command has just been executed for the first time.
|
||||
;; Add it to `smex-data'.
|
||||
(if smex-data
|
||||
(setcdr (last smex-data) (list command-item))
|
||||
(setq smex-data (list command-item)))
|
||||
1))))
|
||||
|
||||
(defun smex-sort-item-at (n)
|
||||
"Sorts item at position N in `smex-cache'."
|
||||
(let* ((command-cell (nthcdr n smex-cache))
|
||||
(command-item (car command-cell)))
|
||||
(let ((insert-at (smex-detect-position
|
||||
command-cell
|
||||
(lambda (cell)
|
||||
(smex-sorting-rules command-item (car cell))))))
|
||||
;; TODO: Should we handle the case of 'insert-at' being nil?
|
||||
;; This will never happen in practice.
|
||||
(when (> insert-at 1)
|
||||
(setq command-cell (smex-remove-nth-cell n smex-cache))
|
||||
;; smex-cache just got shorter by one element, so subtract '1' from insert-at.
|
||||
(setq insert-at (+ n (- insert-at 1)))
|
||||
(smex-insert-cell command-cell insert-at smex-cache)
|
||||
|
||||
;; Repeat the same for the ido cache. DRY?
|
||||
(setq command-cell (smex-remove-nth-cell n smex-ido-cache))
|
||||
(smex-insert-cell command-cell insert-at smex-ido-cache)))))
|
||||
|
||||
(defun smex-detect-position (cell function)
|
||||
"Detects, relatively to CELL, the position of the cell
|
||||
on which FUNCTION returns true.
|
||||
Only checks cells after CELL, starting with the cell right after CELL.
|
||||
Returns nil when reaching the end of the list."
|
||||
(let ((pos 1))
|
||||
(catch 'break
|
||||
(while t
|
||||
(setq cell (cdr cell))
|
||||
(if (not cell)
|
||||
(throw 'break nil)
|
||||
(if (funcall function cell) (throw 'break pos))
|
||||
(setq pos (1+ pos)))))))
|
||||
|
||||
(defun smex-remove-nth-cell (n list)
|
||||
"Removes and returns the Nth cell in LIST."
|
||||
(let* ((previous-cell (nthcdr (- n 1) list))
|
||||
(result (cdr previous-cell)))
|
||||
(setcdr previous-cell (cdr result))
|
||||
result))
|
||||
|
||||
(defun smex-insert-cell (new-cell n list)
|
||||
"Inserts cell at position N in LIST."
|
||||
(let* ((cell (nthcdr (- n 1) list))
|
||||
(next-cell (cdr cell)))
|
||||
(setcdr (setcdr cell new-cell) next-cell)))
|
||||
|
||||
;;--------------------------------------------------------------------------------
|
||||
;; Help and Reference
|
||||
|
||||
(defun smex-do-with-selected-item (fn)
|
||||
(setq smex-custom-action fn)
|
||||
(ido-exit-minibuffer))
|
||||
|
||||
(defun smex-describe-function ()
|
||||
(interactive)
|
||||
(smex-do-with-selected-item (lambda (chosen)
|
||||
(describe-function chosen)
|
||||
(pop-to-buffer "*Help*"))))
|
||||
|
||||
(defun smex-where-is ()
|
||||
(interactive)
|
||||
(smex-do-with-selected-item 'where-is))
|
||||
|
||||
(defun smex-find-function ()
|
||||
(interactive)
|
||||
(smex-do-with-selected-item 'find-function))
|
||||
|
||||
(defun smex-extract-commands-from-keymap (map)
|
||||
(let (commands)
|
||||
(smex-parse-keymap map commands)
|
||||
commands))
|
||||
|
||||
(defun smex-parse-keymap (map commands)
|
||||
(map-keymap (lambda (_binding element)
|
||||
(if (and (listp element) (eq 'keymap (car element)))
|
||||
(smex-parse-keymap element commands)
|
||||
;; Strings are commands, too. Reject them.
|
||||
(if (and (symbolp element) (commandp element))
|
||||
(push element commands))))
|
||||
map))
|
||||
|
||||
(defun smex-extract-commands-from-features (mode)
|
||||
(let ((library-path (symbol-file mode))
|
||||
(mode-name (symbol-name mode))
|
||||
commands)
|
||||
|
||||
(string-match "\\(.+?\\)\\(-mode\\)?$" mode-name)
|
||||
;; 'lisp-mode' -> 'lisp'
|
||||
(setq mode-name (match-string 1 mode-name))
|
||||
(if (string= mode-name "c") (setq mode-name "cc"))
|
||||
(setq mode-name (regexp-quote mode-name))
|
||||
|
||||
(dolist (feature load-history)
|
||||
(let ((feature-path (car feature)))
|
||||
(when (and feature-path (or (equal feature-path library-path)
|
||||
(string-match mode-name (file-name-nondirectory
|
||||
feature-path))))
|
||||
(dolist (item (cdr feature))
|
||||
(if (and (listp item) (eq 'defun (car item)))
|
||||
(let ((function (cdr item)))
|
||||
(when (commandp function)
|
||||
(setq commands (append commands (list function))))))))))
|
||||
commands))
|
||||
|
||||
(defun smex-show-unbound-commands ()
|
||||
"Shows unbound commands in a new buffer,
|
||||
sorted by frequency of use."
|
||||
(interactive)
|
||||
(setq smex-data (sort smex-data 'smex-sorting-rules))
|
||||
(let ((unbound-commands (delq nil
|
||||
(mapcar (lambda (command-item)
|
||||
(unless (where-is-internal (car command-item))
|
||||
command-item))
|
||||
smex-data))))
|
||||
(view-buffer-other-window "*Smex: Unbound Commands*")
|
||||
(setq buffer-read-only t)
|
||||
(let ((inhibit-read-only t))
|
||||
(erase-buffer)
|
||||
(smex-pp unbound-commands))
|
||||
(set-buffer-modified-p nil)
|
||||
(goto-char (point-min))))
|
||||
|
||||
;; A copy of `ido-pp' that's compatible with lexical bindings
|
||||
(defun smex-pp* (list list-name)
|
||||
(let ((print-level nil) (eval-expression-print-level nil)
|
||||
(print-length nil) (eval-expression-print-length nil))
|
||||
(insert "\n;; ----- " list-name " -----\n(\n ")
|
||||
(while list
|
||||
(let* ((elt (car list))
|
||||
(s (if (consp elt) (car elt) elt)))
|
||||
(if (and (stringp s) (= (length s) 0))
|
||||
(setq s nil))
|
||||
(if s
|
||||
(prin1 elt (current-buffer)))
|
||||
(if (and (setq list (cdr list)) s)
|
||||
(insert "\n "))))
|
||||
(insert "\n)\n")))
|
||||
|
||||
(provide 'smex)
|
||||
;;; smex.el ends here
|
||||
@@ -1,6 +0,0 @@
|
||||
;; -*- emacs-lisp -*- <21/03/22 00:03:53 /home/yorune/.emacs.d/tramp>
|
||||
;; Tramp connection history. Don't change this file.
|
||||
;; Run `M-x tramp-cleanup-all-connections' instead.
|
||||
|
||||
(((tramp-file-name "sudo" "root" nil "Gentoo" nil nil nil)
|
||||
nil))
|
||||
@@ -1,3 +0,0 @@
|
||||
((magit-commit nil)
|
||||
(magit-dispatch nil)
|
||||
(magit-push nil))
|
||||
@@ -1,8 +0,0 @@
|
||||
[user]
|
||||
name = Marcin Woźniak
|
||||
email = y0rune@aol.com
|
||||
signingkey = D34FB8A44F324B8A
|
||||
|
||||
[include]
|
||||
path = ~/.gituser.config
|
||||
path = ~/.gitconfig.local
|
||||
@@ -1,52 +0,0 @@
|
||||
[gpg]
|
||||
program = gpg
|
||||
|
||||
[commit]
|
||||
gpgsign = true
|
||||
verbose = true
|
||||
|
||||
[pull]
|
||||
rebase = false
|
||||
|
||||
[push]
|
||||
autoSetupRemote = true
|
||||
|
||||
[init]
|
||||
defaultBranch = main
|
||||
|
||||
[alias]
|
||||
ci = commit --verbose
|
||||
co = checkout
|
||||
cp = cherry-pick
|
||||
df = !git --no-pager diff
|
||||
br = !git branch | cat
|
||||
dfh = !git --no-pager diff
|
||||
diffh = !git --no-pager diff
|
||||
lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an - %ae>%Creset' --abbrev-commit --branches
|
||||
prune-tags = !git tag -l | xargs git tag -d && git fetch -t
|
||||
show = --no-pager show --color --pretty=format:%b
|
||||
squash-all = "!f(){ git reset $(git commit-tree HEAD^{tree} \"$@\");};f"
|
||||
st = status --ignore-submodules=dirty -s
|
||||
untrack-file = !git update-index --assume-unchanged
|
||||
exclude-file = !git update-index --assume-unchanged
|
||||
c = commit --author='Marcin Woźniak <y0rune@aol.com> -s'
|
||||
cw = commit --author='Marcin Woźniak <marcin.wozniak@wundermanthompson.com> -s'
|
||||
retag = "!f() { if [ -z \"$1\" ]; then echo \"No version provided. Skipping git push.\"; else git tag --delete $1 2>/dev/null; git tag -a $1 -m \"Version $1\"; git push --tags -f; git push -f; fi; }; f"
|
||||
delete-branch = "!$HOME/.local/bin/git-delete-branch"
|
||||
|
||||
[url "git@github.com:"]
|
||||
insteadOf = "https://github.com/"
|
||||
|
||||
[credential "https://github.com"]
|
||||
helper =
|
||||
helper = !/usr/bin/gh auth git-credential
|
||||
|
||||
[credential "https://gist.github.com"]
|
||||
helper =
|
||||
helper = !/usr/bin/gh auth git-credential
|
||||
|
||||
[filter "lfs"]
|
||||
process = git-lfs filter-process
|
||||
required = true
|
||||
clean = git-lfs clean -- %f
|
||||
smudge = git-lfs smudge -- %f
|
||||
+57
-208
@@ -1,282 +1,131 @@
|
||||
.config/backup-started*
|
||||
.Xauthority
|
||||
.matplotlib
|
||||
.Trash
|
||||
.DS_Store
|
||||
.ansible
|
||||
.CFUserTextEncoding
|
||||
.cups/
|
||||
.docker/
|
||||
.oh-my-zsh/
|
||||
.shell.pre-oh-my-zsh
|
||||
.zcompdum*
|
||||
.zsh_history
|
||||
.zsh_sessions/
|
||||
.emacs.d/emacs-custom.el
|
||||
.emacs.d/smex-items
|
||||
notes
|
||||
Applications/
|
||||
Desktop/
|
||||
Library/
|
||||
Pictures/
|
||||
Public/
|
||||
VirtualBox*
|
||||
synergy.log
|
||||
.config/Element/
|
||||
.config/TabNine/
|
||||
.config/coc/
|
||||
.config/google-chrome/
|
||||
.config/teamviewer/
|
||||
.ipython/
|
||||
.bugz_token
|
||||
.irbrc
|
||||
.jupyter/
|
||||
.local/bin/autopep8
|
||||
.local/bin/isort-identify-imports
|
||||
.local/bin/pycodestyle
|
||||
.local/bin/surprise
|
||||
.local/bin/yamllint
|
||||
.config/Signal/
|
||||
.config/lazygit/
|
||||
.config/libreoffice/
|
||||
.config/quassel-irc.org/
|
||||
.local/bin/pytube
|
||||
.local/bin/spotify_dl
|
||||
.packer.d/
|
||||
.spotifydl/
|
||||
.netrc
|
||||
.nvimlog
|
||||
.python_history
|
||||
.vmware/
|
||||
.config/Microsoft/
|
||||
.config/autostart/
|
||||
.config/keepassxc/
|
||||
.config/mimeapps.list
|
||||
.config/teams/
|
||||
.local/bin/epylint
|
||||
.local/bin/haruhi-dl
|
||||
.local/bin/isort
|
||||
.local/bin/pylint
|
||||
.local/bin/pyreverse
|
||||
.local/bin/symilar
|
||||
.aws/
|
||||
.local/bin/wheel
|
||||
.logSynology
|
||||
.vscode/
|
||||
.yarnrc
|
||||
.emacs.d/elpa/
|
||||
.fltk/
|
||||
.local/bin/vpnst
|
||||
.npm/
|
||||
.Xauthority
|
||||
.anthy/
|
||||
.aspell.*
|
||||
.bash_history
|
||||
.bash_logout
|
||||
.bash_profile
|
||||
.bashrc
|
||||
.bitcoin
|
||||
.bundle/
|
||||
.cache/
|
||||
.cargo
|
||||
.cert/
|
||||
.swt/
|
||||
.smb
|
||||
.emacs.d/ido.last
|
||||
.local/bin/black*
|
||||
.config/zsh/
|
||||
.fzf.bash
|
||||
.fzf.zsh
|
||||
.fzf/
|
||||
.local/bin/ansible*
|
||||
.recently-used
|
||||
.eclipse/
|
||||
.emacs.d/.dap-breakpoints
|
||||
.password
|
||||
.chatty/
|
||||
.config/transmission-daemon/
|
||||
.config/wireshark/
|
||||
.config/tea/
|
||||
.config/ibus/
|
||||
.config/vivaldi/
|
||||
.config/gtk-2.0/
|
||||
.config/*.conf
|
||||
.config/BraveSoftware
|
||||
.config/GIMP/
|
||||
.config/Microsoft/
|
||||
.config/Postman/
|
||||
.config/QtProject.conf
|
||||
.config/VSCodium
|
||||
.config/autostart/
|
||||
.config/cmus
|
||||
.config/configstore
|
||||
.config/dconf
|
||||
.config/discord
|
||||
.config/freerdp
|
||||
.config/fzf
|
||||
.config/gtk-3.0
|
||||
.config/htop
|
||||
.config/ibu
|
||||
.config/keepassxc/
|
||||
.config/mimeapps.list
|
||||
.config/mpv/watch_later/
|
||||
.config/msmtp
|
||||
.config/mutt
|
||||
.config/neofetch/
|
||||
.config/newsboat/urlswork
|
||||
.config/nvim/autoload
|
||||
.config/nvim/plugged
|
||||
.config/procps
|
||||
.config/pulse
|
||||
.config/qalculate
|
||||
.config/QtProject.conf
|
||||
.config/spicy
|
||||
.config/teams/
|
||||
.config/VSCodium
|
||||
.config/cmus
|
||||
.config/dconf
|
||||
.config/fzf
|
||||
.config/htop
|
||||
.config/mutt
|
||||
.config/procps
|
||||
.config/qalculate
|
||||
.config/vpn
|
||||
.config/weatherreport
|
||||
.config/newsboat/urlswork
|
||||
.dbus/
|
||||
.emacs.d/.lsp-session-v1
|
||||
.emacs.d/.mc-lists.el
|
||||
.emacs.d/ac-comphist.dat
|
||||
.emacs.d/auto-save-list/
|
||||
.emacs.d/eclipse.jdt.ls/
|
||||
.emacs.d/elpa/
|
||||
.emacs.d/workspace/
|
||||
.fehbg
|
||||
.fltk/
|
||||
.gem/
|
||||
.ghc/
|
||||
.gitconfig
|
||||
.gkrellm2/data/
|
||||
.gnome/
|
||||
.gnupg/
|
||||
.gtkrc-2.0
|
||||
.history_zsh
|
||||
.icons/
|
||||
.irb_history
|
||||
.irssi/
|
||||
.java/
|
||||
.jd2/
|
||||
.lesshst
|
||||
.local/bin/__pycache__/
|
||||
.local/bin/backupSynology
|
||||
.local/bin/chardetect
|
||||
.local/bin/epylint
|
||||
.local/bin/flask
|
||||
.local/bin/futurize
|
||||
.local/bin/haruhi-dl
|
||||
.local/bin/isort
|
||||
.local/bin/pasteurize
|
||||
.local/bin/pwiz.py
|
||||
.local/bin/pylint
|
||||
.local/bin/pyreverse
|
||||
.local/bin/symilar
|
||||
.local/bin/vpnst
|
||||
.local/bin/wheel
|
||||
.local/bin/estimator_ckpt_converter
|
||||
.local/bin/f2py3.9
|
||||
.local/bin/google-oauthlib-tool
|
||||
.local/bin/import_pb_to_tensorboard
|
||||
.local/bin/markdown_py
|
||||
.local/bin/pyrsa-*
|
||||
.local/bin/saved_model_cli
|
||||
.local/bin/tensorboard
|
||||
.local/bin/tf_upgrade_v2
|
||||
.local/bin/tflite_convert
|
||||
.local/bin/toco
|
||||
.local/bin/toco_from_protos
|
||||
.local/bin/tqdm
|
||||
.local/bin/f2py
|
||||
.local/bin/f2py3
|
||||
.keras/
|
||||
.config/menus
|
||||
.local/bin/wheel
|
||||
.local/include/
|
||||
.local/lib/
|
||||
.local/lib64/
|
||||
.local/share/
|
||||
.logSynology
|
||||
.m2/
|
||||
.mbsyncrc
|
||||
.megaCmd/
|
||||
.minecraft/
|
||||
.mozc/
|
||||
.mozilla/
|
||||
.node_repl_history
|
||||
.notmuch-config
|
||||
.npm/
|
||||
.nv/
|
||||
.nvidia-settings-rc
|
||||
.openoffice/
|
||||
.oracle_jre_usage/
|
||||
.password-store/
|
||||
.pki/
|
||||
.plannaplan
|
||||
.pvpn-cli/
|
||||
.pylint.d/
|
||||
.screenlayout/
|
||||
.solargraph/
|
||||
.sqlite_history
|
||||
.ssh/
|
||||
.sshservers
|
||||
.steam/
|
||||
.steampath
|
||||
.steampid
|
||||
.sts4/
|
||||
.thunderbird/
|
||||
.tig_history
|
||||
.tlauncher/
|
||||
.tooling/
|
||||
.ts3client/
|
||||
.var/
|
||||
.vim/
|
||||
.viminfo
|
||||
.vimspector.log
|
||||
.vnc/
|
||||
.vscode-oss/
|
||||
.vscode-server/
|
||||
.vscode/
|
||||
.w3m/
|
||||
.weechat/
|
||||
.wget-hsts
|
||||
.wine/
|
||||
.wmWeatherReports/
|
||||
.yarnrc
|
||||
.zcompdump-Gentoo-5.8
|
||||
.bitcoin
|
||||
.gkrellm2/data/
|
||||
.wmWeatherReports/
|
||||
.local/lib/
|
||||
.mbsyncrc
|
||||
.notmuch-config
|
||||
.password-store/
|
||||
.vnc/
|
||||
go/
|
||||
Documents
|
||||
Downloads
|
||||
Linux
|
||||
mega
|
||||
MEGA
|
||||
Muzyka
|
||||
Screenshots
|
||||
Wallpapers
|
||||
developer-quiz.txt
|
||||
git/
|
||||
go/
|
||||
ittv-credentials
|
||||
mcserver/
|
||||
mega
|
||||
www
|
||||
Movies/
|
||||
Music/
|
||||
notes.org
|
||||
|
||||
.config/backup.log
|
||||
.config/gh/config.yml
|
||||
.config/gh/hosts.yml
|
||||
.local/state/gh/state.yml
|
||||
.emacs.d/ido.last~
|
||||
.config/karabiner/automatic_backups
|
||||
.config/qBittorrent
|
||||
.config/envman
|
||||
.emacs.d/.last-package-update-day
|
||||
.emacs.d/amx-items
|
||||
.local/bin/pathman
|
||||
.local/bin/webi
|
||||
.local/opt/pathman-v0.5.2/bin
|
||||
Musik/
|
||||
|
||||
.config/ytmdl
|
||||
golang
|
||||
.virtualenvs/debugpy
|
||||
.local/bin/mgorny-dev-scripts
|
||||
.local/bin/serviceman
|
||||
.local/opt/serviceman-v0.8.0/bin
|
||||
.emacs.d/recentf
|
||||
.config/filezilla
|
||||
.local/state/mume
|
||||
.putty
|
||||
.redhat
|
||||
.cpanm
|
||||
.node-gyp/14.16.0
|
||||
.packettracer
|
||||
.dlv
|
||||
Cisco Packet Tracer 8.0.0
|
||||
.local/bin/kubectl
|
||||
.rustup
|
||||
.local/tss-sdk
|
||||
.local/bin/tss
|
||||
.wget-hsts
|
||||
.icons/
|
||||
.gtkrc-2.0
|
||||
.mozc/
|
||||
.emacs.d/ac-comphist.dat
|
||||
.local/bin/chardetect
|
||||
.local/bin/flask
|
||||
.local/include/
|
||||
.config/neofetch/
|
||||
.vimspector.log
|
||||
.tig_history
|
||||
.tooling/
|
||||
.sts4/
|
||||
.solargraph/
|
||||
.screenlayout/
|
||||
.pylint.d/
|
||||
.nvidia-settings-rc
|
||||
.m2/
|
||||
.config/mpv/watch_later/
|
||||
.gem/
|
||||
.config/Postman/
|
||||
.config/GIMP/
|
||||
|
||||
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user