Commit graph

634 commits

Author SHA1 Message Date
William Carroll
54c13a8848 Update Cider KBD to use google-chrome
This allows me to take advantage of the --app=<URL> flag that google-chrome
supports, which is nice for a version of cider that bleeds all the way to the
window's edges. It makes Cider feel more like a native application experience.
2019-03-28 17:32:21 +00:00
William Carroll
653ffd381a Support $mod+Return for starting up a terminal
This comes with the default configuration on i3. I removed this KBD originally
because I was hoping to use the $mod+{,Shift+}t KBDs frequently. I still do, but
as I get more comfortable with i3, splits, parent containers, etc. I may prefer
to create terminals this way. We'll see...
2019-03-28 17:30:32 +00:00
William Carroll
d69d6421b2 Support KBD to unfocus parent container
Been missing this for awhile. Useful since I'm using $mod+a more often.
2019-03-28 17:29:43 +00:00
William Carroll
97c156be88 Support SpeWall in bash variables
NOTE: consider migrating from GH private repo to Google's Git on Borg. This is
preferable since GH gets hacked and private repos can be exposed. While a path
to a Google 3 repo like SpeWall may not pose a large security risk, it certainly
isn't optimal. Imagine a path to a repository whose name leaked a secret
project. Two options:

1. embrace encryption options like Mozilla's `sops` and remain on GH private
2. switch wholesale from private GH to GoB
3. classify "sensitve" parts of dotfiles as such and move those to GoB and keep
   everything else on private GH

One added perk of switching to GoB is saving the $7 monthly fee to support
private GH repos.
2019-03-28 17:29:24 +00:00
William Carroll
79387acb96 Create generic loop fn
Might be useful for things like:

```
loop 'PAGER="" hgst' 1 y
```

```
loop 'du -hs .'
```

```
loop ll
```
2019-03-27 18:27:49 +00:00
William Carroll
370f0346de Augment browse function
The nohup.out file was creating a bunch of noise and polluting my FS. It may
have been the correct thing to add, but if it was, I'm unsure why. Removing it
for now since it's been bothering me quite a bit.
2019-03-27 18:26:58 +00:00
William Carroll
ac34df2372 Add daily Google ENG tips to prodaccess
Wraps the existing `prodaccess` executable and displays a quote from Google
ENG's fortune db.

Fortune is a GNU tool intended to support random quote compilation, display,
etc. It's pretty interesting.

NOTE: the `prodcertstatus` executable that this function is using as a guard
looks like it might be useful moving forward.
2019-03-27 18:25:11 +00:00
William Carroll
2b34daf50a Support's flagpick alias
flagpick will interactively allow users to add CLI flags. Should work for any
executable that supports a `--help` flag.
2019-03-27 18:24:00 +00:00
William Carroll
f4e3e98594 Support gca
We already have `gcan`... looks like `gca` was already defined by some ZSH git
extension. This further weakens my dependency on that extension, which I think
is a good things.
2019-03-27 18:22:59 +00:00
William Carroll
161a09e6df Adjust i3 colors, update KBDs, remove icons from i3statusbar
May need to find a better KBD for `snip_it`, since I really enjoy Tmux's M-s to
switch sessions.

Learned about i3's "edge" concept. Re-supported KBDs for settings split
directions. Also adjusted theme colors.

Also adjusts the formatting of the timezone information to show GMT as LON, EST
as NYC, and Pacific as MTV.
2019-03-27 18:21:00 +00:00
William Carroll
01ff37824d Start lf from i3 in the ~/Downloads dir
This is a pretty common directory and has proven useful.
2019-03-25 17:33:21 +00:00
William Carroll
3c96944855 Drop OSX config from .gitconfig
This is a relic from the OSX support days. It's incompatible with the Linux
setup.
2019-03-25 17:32:30 +00:00
William Carroll
72a5510dbf Support KBDs for existing fns; support size fn
- Supports `size`
- Adds KBDs for encrypt/decrypt, archive/unarchive, tar/untar, etc.
- Adds explanation behind KBDs
2019-03-24 16:28:56 +00:00
William Carroll
e1d42452b5 Resupport mod+Shift+{3,4} KBDs in i3
I originally dropped support for these because I wanted to imitate OSX's
screenshot KBDs, which were mod+Shift+{3,4}. I'm not sure I want to imitate OSX
now that I don't have any Apple hardware besides my iPhone. I'm getting more
forgetting those KBDs. At the moment, however, I cannot find a better KBD for my
snip_it function. Stay tuned...
2019-03-24 16:13:09 +00:00
William Carroll
06bf69085e Ensure GPG import.sh script is executable
I must not have tested this before adding it to the repository; otherwise, I
would have found this. Oh well... it worked like a charm when copying the GPG
information from my desktop to my laptop.
2019-03-24 16:12:03 +00:00
William Carroll
0eaf4602d8 Support brightness adjustments on laptop
I used `light` on my MBP running NixOS. I got `xbacklight` working on my Dell
Precision running gLinux. It wasn't easy, and I still don't fully understand the
integration story. Thankfully I'm not alone and the documentation from the Arch
Linux came to rescue (per usual).
2019-03-24 16:10:43 +00:00
William Carroll
48320fcae4 Remove unnecessary .gitkeep from laptop dir
This should have been removed when I populated that directory.
2019-03-24 16:10:08 +00:00
William Carroll
7b46b6bfe1 Adds emoji font and function to test emoji support
In my quest to learn more about terminals, I added a function to output ten
emojis. Technically this tests the same thing as test_unicode.

Unfortunately I couldn't get `st` to output any colored emojis. This is a bit of
a buzzkill for my grand plans to create a terminal-based chat client that
supports emojis.
2019-03-24 16:09:51 +00:00
William Carroll
362a623a0a Define functions, KBDs for lf
Defines functions for creating, deleting, renaming files.
Defines functions for encrypting/decrypting files.
Defines functions for archiving/unarchiving files.
Adds TODOs for wishlist items.
Adds `help` function to view `lf` documentation.

TODO: write generic explanation of desire to share KBDs between Emacs, Vim,
other programs that I can link to in documentation to avoid repeating myself.
2019-03-24 16:05:34 +00:00
William Carroll
f5ace0b0a9 Prefer $(pwd) to $PWD
I'm unsure if this is idiomatic POSIX shell scripting or not, but I generally
prefer function calls to variables. Thankfully things like Haskell don't
differentiate between the two. In other cold and hostile environments like shell
scripting, us programmers must take care to prefer functions to variables where
it makes sense.
2019-03-23 16:38:19 +00:00
William Carroll
7167764622 Support aptitude removals
If you're going to install things and support that with an aliases, might as
well support the removals of packages with an aliases. Better to keep systems
lean -- especially if entropy is the tendancy.
2019-03-23 16:36:34 +00:00
William Carroll
7bcfa26f51 Support shared, device-specific i3 configurations
Separated i3/configuration since some of my devices support XFree86 keysyms
while others do not. This introduced some cascading changes.

- Removed ~/.config/i3/config from this repo. Since I will be switching between
  devices semi-regularly and that file will be generated each time I switch to a
  different device running an X session, I don't want the i3/config to spam my
  `gst` and `gd` when I haven't changed configuration in either config.shared or
  config.device.
- Update aliases, variables, etc. to point to config.shared instead of the
  generated file.
- Ensure that X sessions generate the i3/config file.
- Ensure that i3 reload and restart command generate the i3/config file.
2019-03-23 16:31:59 +00:00
William Carroll
ef8621e7da Fixes Emacs's scroll-bar display issues
Prefer (scroll-bar-mode -1) to (toggle-scroll-bar -1).
2019-03-21 18:15:41 +00:00
William Carroll
845ebb08fe Creates wrapper around p4 filelog
Should make viewing file history a little more ergonomic.
2019-03-21 17:24:50 +00:00
William Carroll
f1ca81b021 Remove scroll bars from Emacs
I don't use these; they take up space; the colors clash with my dark theme.
2019-03-21 14:58:09 +00:00
William Carroll
4d83acb77a Theme i3 status bar
Adds some preliminary styling to my i3 status bar to vaguely align with the One
Dark theme.
2019-03-21 14:57:32 +00:00
William Carroll
8a9cb25fe3 Support One Dark in Tmux
Tmux themes should stay in sync with wallpaper, Vim, Emacs, Chrome, etc.
2019-03-21 14:56:53 +00:00
William Carroll
12ba60eb13 Prefer TwoDark theme for bat
This seems to resemble Atom's One Dark theme that I'm using in Vim, Emacs,
wallpaper already. Would be nice to keep everything consistent. I should update
the i3 Status Bar and Chrome to support One Dark themes as well.
2019-03-21 13:59:09 +00:00
William Carroll
cf39cf760a Prefer Emacs client-server setup
This change affects:
  - alias e
  - i3 KBDs
  - .xsessionrc

It will be interesting to see how this works over SSH. In theory, the
ALTERNATE_EDITOR variable should kick in and `vim` should be used. Time will
tell if this is the preferred setup. Until then...
2019-03-21 13:57:15 +00:00
William Carroll
b1275671a8 Return (server-start) to Emacs initialization
See the comment for an explanation about this revision.

  - we want to support to GUI
  - it's difficult to reuse GUI windows elegantly unless the server is started
    from the GUI itself
  - consider starting the emacs GUI when X initializes
2019-03-20 18:38:02 +00:00
William Carroll
a69e21a74f Drop support for open-from-iterm since OSX support was dropped
This should have been removed a few commits back. Oh well... dirty laundry
2019-03-20 18:36:59 +00:00
William Carroll
0039022c6e Disable company-mode when editing markdown
`company-mode' can be pretty noisy in some modes. In fact, I'm writing this in
`fundamental-mode', which is proving to be equally as noisy as the
auto-completion in `markdown-mode'. Stay tuned for an update that disables
`company-mode' in fundamental mode.
2019-03-20 15:50:34 +00:00
William Carroll
80dc1fdb50 Drop support for executables
See the README changes for an explanation.
2019-03-20 15:32:06 +00:00
William Carroll
827448d116 Fix glibc 2.27 issue with Nix
See the comments in .profile for an explanation and a link to a thread that has
a longer-conversation.
2019-03-20 15:18:06 +00:00
William Carroll
57b6750789 Updates broken hardlinks
These are relics from the commit that dropped support for OSX.
2019-03-20 15:14:43 +00:00
William Carroll
da070adf8a Move source ~/.profile to ~/.zprofile
See the comments in .zprofile for an explanation and a link to a much larger
conversation about this issue. It's a bit messy.
2019-03-20 15:13:41 +00:00
William Carroll
7f0c0084e2 Support Xresources for multiple devices
This borrows the setup used with .xsessionrc{,.shared,.device}. It supports
configuration for my desktop, laptop, cloudtop.
2019-03-20 15:12:40 +00:00
William Carroll
ef2b934268 Support retrieving Monzo balance
This is intended to be an i3 status bar integration eventually. As long as the
monzo_creds file stays encrypted and out of a public GH repository, this should
be fairly secure.
2019-03-20 15:11:22 +00:00
William Carroll
74a1595bc9 Support hgls for fig
This lists all CitC clients.
2019-03-20 15:10:42 +00:00
William Carroll
9908175878 Remove org-mode's M-{h,j,k,l} conflicting KBDs
This is a bit of a workaround since ideally wpc/ensure-kbds and wpc/kbds minor
mode should eclipse the major-mode's KBDs. I couldn't fully debug the issue, and
in the interest of getting on with things, I resolved to just unbind those keys.
2019-03-20 15:08:56 +00:00
William Carroll
a810a74771 Support global auto-fill-mode
It appears that (auto-fill-mode 1) may be buffer-local. Adding a hook to
fundamental-mode to ensure auto-fill-mode is enabled for most buffers. Stay
tuned, because this may need to be setup for prog-mode-hook as well. Or
neither... we'll see what works.
2019-03-20 15:07:07 +00:00
William Carroll
29e19725ac Rename Elisp function for ensuring KBDs
Prefer wpc/ namespace for functions that I define. Consider defining all
functions in one location, similar to ZSH's functions.zsh
2019-03-20 15:03:03 +00:00
William Carroll
e14b271d39 Start Tmux up when X initializes
As noted in the comments, this may not be the final destination for this
incantation. It may also be. Right now, I don't know.
2019-03-18 20:57:46 +00:00
William Carroll
aec6461660 Remove hardlink dependency on lf
After moving environment variables from ~/.zshrc to ~/.profile, i3 can locate
`lf` on my PATH without any trickier involved. This is quite nice.
2019-03-18 20:56:55 +00:00
William Carroll
a2f07f24e0 Support an org-capture template for misc shopping
Sometimes just capturing what I want to buy is as satisfying as actually buying
the item. These org-capture templates really alleviate a lot of the anxiety I
associate with trying to remember many things.
2019-03-18 20:55:58 +00:00
William Carroll
0de3c5a14f Use correct hostname for laptop
Looks like I forgot to change this entry when updating the other locations in
the dotfiles that reference the wrong hostname for my laptop.
2019-03-18 20:55:01 +00:00
William Carroll
bef7799f4b Support attach and detach aliases for tmux
As mentioned in the comments, prefer the <leader>d for detaching.
2019-03-18 20:54:27 +00:00
William Carroll
51e123d84c Remove autojump functionality from t
This sometimes is what I what and most of the time not what I want
2019-03-18 20:53:26 +00:00
William Carroll
14972986e3 Break .xsessionrc into .xsessionrc.{shared,device}
This allows configuration for device specific settings - usually or
perhaps exclusively hardware related. Supporting disabling laptop
touchscreen, increasing laptop cursor speed, reversing the scroll
direction of the laptop mouse.
2019-03-18 15:56:03 +00:00
William Carroll
61b40b3012 wpcarro.roam.googlers.com -> wpcarro
Until I change my hostname, I'll need to use wpcarro. Internally on
Google networks, this laptop is resolvable via wpcarro.roam.*

Idea: consider defining in ~/.profile:

DESKTOP_NAME=<name>
LAPTOP_NAME=<name>
CLOUDTOP_NAME=<name>

...and then refer to these environment variables throughout my
configuration that depends on them. E.g. -

  - configs/install
  - configs/uninstall
  - .zshrc
  - .ssh/config

For now, I'll stick with the path of least resistance.
2019-03-18 15:53:18 +00:00