From 96e8a1d4289b30e37891b0caf8329e2f0252a3a5 Mon Sep 17 00:00:00 2001 From: Barak Michener Date: Fri, 8 Jan 2016 15:29:18 -0500 Subject: [PATCH] new lint help --- .config/terminator/config | 96 ++++++------- .emacs.d/init.el | 42 ++++-- .spacemacs | 356 ++++++++++++++++++++++++++++++++++++++++++++++ .vimrc | 5 + .xinitrc | 23 +-- .zprofile | 2 +- bin/golintc | 23 ++- bin/mkgoenv | 4 + 8 files changed, 481 insertions(+), 70 deletions(-) create mode 100644 .spacemacs diff --git a/.config/terminator/config b/.config/terminator/config index b44fcc0..032d639 100644 --- a/.config/terminator/config +++ b/.config/terminator/config @@ -1,63 +1,63 @@ [global_config] enabled_plugins = LaunchpadCodeURLHandler, APTURLHandler, LaunchpadBugURLHandler focus = mouse - title_inactive_fg_color = "#b8b8b8" - title_transmit_bg_color = "#535d6c" tab_position = bottom title_inactive_bg_color = "#222222" + title_inactive_fg_color = "#b8b8b8" + title_transmit_bg_color = "#535d6c" [keybindings] - cycle_prev = k - cycle_next = j close_term = w - split_vert = v + cycle_next = j + cycle_prev = k paste = Insert -[profiles] - [[default]] - scrollbar_position = hidden - use_system_font = False - background_darkness = 0.8 - background_type = transparent - background_image = None - foreground_color = "#ffffff" - show_titlebar = False - font = Inconsolata Medium 15 - scrollback_infinite = True - [[Large]] - scrollbar_position = hidden - use_system_font = False - background_darkness = 0.8 - background_type = transparent - background_image = None - foreground_color = "#ffffff" - show_titlebar = False - font = Inconsolata Medium 32 - scrollback_infinite = True - [[Medium]] - scrollbar_position = hidden - use_system_font = False - background_darkness = 0.8 - background_type = transparent - background_image = None - foreground_color = "#ffffff" - show_titlebar = False - font = Inconsolata Medium 26 - scrollback_infinite = True - [[4k]] - scrollbar_position = hidden - use_system_font = False - background_darkness = 0.8 - background_type = transparent - background_image = None - foreground_color = "#ffffff" - show_titlebar = False - font = Inconsolata Medium 18 - scrollback_infinite = True + split_vert = v [layouts] [[default]] [[[child1]]] - type = Terminal parent = window0 + type = Terminal [[[window0]]] - type = Window parent = "" + type = Window [plugins] +[profiles] + [[default]] + background_darkness = 0.8 + background_image = None + background_type = transparent + font = Droid Sans Mono Dotted 15 + foreground_color = "#ffffff" + scrollback_infinite = True + scrollbar_position = hidden + show_titlebar = False + use_system_font = False + [[4k]] + background_darkness = 0.8 + background_image = None + background_type = transparent + font = Inconsolata Medium 18 + foreground_color = "#ffffff" + scrollback_infinite = True + scrollbar_position = hidden + show_titlebar = False + use_system_font = False + [[Large]] + background_darkness = 0.8 + background_image = None + background_type = transparent + font = Inconsolata Medium 32 + foreground_color = "#ffffff" + scrollback_infinite = True + scrollbar_position = hidden + show_titlebar = False + use_system_font = False + [[Medium]] + background_darkness = 0.8 + background_image = None + background_type = transparent + font = Inconsolata Medium 26 + foreground_color = "#ffffff" + scrollback_infinite = True + scrollbar_position = hidden + show_titlebar = False + use_system_font = False diff --git a/.emacs.d/init.el b/.emacs.d/init.el index d66ae88..5c8d37b 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -1,12 +1,32 @@ -(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") - ("org" . "http://orgmode.org/elpa/") - ("marmalade" . "http://marmalade-repo.org/packages/") - ("melpa-stable" . "http://melpa-stable.milkbox.net/packages/"))) -(package-initialize) +;;; init.el --- Spacemacs Initialization File +;; +;; Copyright (c) 2012-2014 Sylvain Benner +;; Copyright (c) 2014-2015 Sylvain Benner & Contributors +;; +;; Author: Sylvain Benner +;; URL: https://github.com/syl20bnr/spacemacs +;; +;; This file is not part of GNU Emacs. +;; +;;; License: GPLv3 -(defun require-package (package) - (setq-default highlight-tabs t) - "Install given PACKAGE." - (unless (package-installed-p package) - (unless (assoc package package-archive-contents) - (package-refresh-contents)))) +;; Without this comment emacs25 adds (package-initialize) here +;; (package-initialize) + +(setq gc-cons-threshold 100000000) +(defconst spacemacs-version "0.105.2" "Spacemacs version.") +(defconst spacemacs-emacs-min-version "24.3" "Minimal version of Emacs.") + +(if (not (version<= spacemacs-emacs-min-version emacs-version)) + (message (concat "Your version of Emacs (%s) is too old. " + "Spacemacs requires Emacs version %d or above.") + emacs-version spacemacs-emacs-min-version) + (load-file (concat user-emacs-directory "core/core-load-paths.el")) + (when init-file-debug (require 'core-debug)) + (require 'core-spacemacs) + (spacemacs/init) + (spacemacs/maybe-install-dotfile) + (configuration-layer/sync) + (spacemacs/setup-startup-hook) + (require 'server) + (unless (server-running-p) (server-start))) diff --git a/.spacemacs b/.spacemacs new file mode 100644 index 0000000..cd48ee0 --- /dev/null +++ b/.spacemacs @@ -0,0 +1,356 @@ +;; It must be stored in your home directory. + +(defun dotspacemacs/layers () + "Configuration Layers declaration. +You should not put any user code in this function besides modifying the variable +values." + (setq-default + ;; Base distribution to use. This is a layer contained in the directory + ;; `+distribution'. For now available distributions are `spacemacs-base' + ;; or `spacemacs'. (default 'spacemacs) + dotspacemacs-distribution 'spacemacs + ;; List of additional paths where to look for configuration layers. + ;; Paths must have a trailing slash (i.e. `~/.mycontribs/') + dotspacemacs-configuration-layer-path '() + ;; List of configuration layers to load. If it is the symbol `all' instead + ;; of a list then all discovered layers will be installed. + dotspacemacs-configuration-layers + '( + ;; ---------------------------------------------------------------- + ;; Example of useful layers you may want to use right away. + ;; Uncomment some layer names and press (Vim style) or + ;; (Emacs style) to install them. + ;; ---------------------------------------------------------------- + (auto-completion :variables + auto-completion-enable-help-tooltip t) + ;; better-defaults + emacs-lisp + git + go + themes-megapack + markdown + (org :variables + org-enable-github-support t) + (shell :variables + shell-default-height 30 + shell-default-position 'bottom + shell-default-term-shell "/bin/zsh") + ;; spell-checking + python + syntax-checking + (version-control :variables + version-control-diff-tool 'diff-hl + version-control-global-margin t) + ) + ;; List of additional packages that will be installed without being + ;; wrapped in a layer. If you need some configuration for these + ;; packages then consider to create a layer, you can also put the + ;; configuration in `dotspacemacs/config'. + dotspacemacs-additional-packages '( + s + protobuf-mode + ) + ;; A list of packages and/or extensions that will not be install and loaded. + dotspacemacs-excluded-packages '( + rainbow-delimiters + ) + ;; If non-nil spacemacs will delete any orphan packages, i.e. packages that + ;; are declared in a layer which is not a member of + ;; the list `dotspacemacs-configuration-layers'. (default t) + dotspacemacs-delete-orphan-packages t)) + +(defun dotspacemacs/init () + "Initialization function. +This function is called at the very startup of Spacemacs initialization +before layers configuration. +You should not put any user code in there besides modifying the variable +values." + ;; This setq-default sexp is an exhaustive list of all the supported + ;; spacemacs settings. + (setq-default + ;; One of `vim', `emacs' or `hybrid'. Evil is always enabled but if the + ;; variable is `emacs' then the `holy-mode' is enabled at startup. `hybrid' + ;; uses emacs key bindings for vim's insert mode, but otherwise leaves evil + ;; unchanged. (default 'vim) + dotspacemacs-editing-style 'vim + + ;; If non nil output loading progress in `*Messages*' buffer. (default nil) + dotspacemacs-verbose-loading nil + ;; Specify the startup banner. Default value is `official', it displays + ;; the official spacemacs logo. An integer value is the index of text + ;; banner, `random' chooses a random text banner in `core/banners' + ;; directory. A string value must be a path to an image format supported + ;; by your Emacs build. + ;; If the value is nil then no banner is displayed. (default 'official) + dotspacemacs-startup-banner 'official + ;; List of items to show in the startup buffer. If nil it is disabled. + ;; Possible values are: `recents' `bookmarks' `projects'. + ;; (default '(recents projects)) + dotspacemacs-startup-lists '(recents projects) + ;; List of themes, the first of the list is loaded when spacemacs starts. + ;; Press T n to cycle to the next theme in the list (works great + ;; with 2 themes variants, one dark and one light) + ;; dotspacemacs-themes '(spacemacs-dark + ;; spacemacs-light + ;; solarized-light + ;; solarized-dark + ;; leuven + ;; monokai + ;; zenburn) + dotspacemacs-themes '(barak) + ;; If non nil the cursor color matches the state color. + dotspacemacs-colorize-cursor-according-to-state t + ;; Default font. `powerline-scale' allows to quickly tweak the mode-line + ;; size to make separators look not too crappy. + dotspacemacs-default-font '("Droid Sans Mono Dotted" + :size 24 + :weight normal + :width normal + :powerline-scale 1.3) + ;; dotspacemacs-default-font '("Inconsolata" + ;; :size 22 + ;; :weight normal + ;; :width normal + ;; :powerline-scale 1.1) + ;; The leader key + dotspacemacs-leader-key "SPC" + ;; The leader key accessible in `emacs state' and `insert state' + ;; (default "M-m") + dotspacemacs-emacs-leader-key "M-m" + ;; Major mode leader key is a shortcut key which is the equivalent of + ;; pressing ` m`. Set it to `nil` to disable it. (default ",") + dotspacemacs-major-mode-leader-key "," + ;; Major mode leader key accessible in `emacs state' and `insert state'. + ;; (default "C-M-m) + dotspacemacs-major-mode-emacs-leader-key "C-M-m" + ;; The command key used for Evil commands (ex-commands) and + ;; Emacs commands (M-x). + ;; By default the command key is `:' so ex-commands are executed like in Vim + ;; with `:' and Emacs commands are executed with ` :'. + dotspacemacs-command-key ":" + ;; If non nil `Y' is remapped to `y$'. (default t) + dotspacemacs-remap-Y-to-y$ t + ;; Location where to auto-save files. Possible values are `original' to + ;; auto-save the file in-place, `cache' to auto-save the file to another + ;; file stored in the cache directory and `nil' to disable auto-saving. + ;; (default 'cache) + dotspacemacs-auto-save-file-location 'cache + ;; If non nil then `ido' replaces `helm' for some commands. For now only + ;; `find-files' (SPC f f), `find-spacemacs-file' (SPC f e s), and + ;; `find-contrib-file' (SPC f e c) are replaced. (default nil) + dotspacemacs-use-ido nil + ;; If non nil, `helm' will try to miminimize the space it uses. (default nil) + dotspacemacs-helm-resize nil + ;; if non nil, the helm header is hidden when there is only one source. + ;; (default nil) + dotspacemacs-helm-no-header nil + ;; define the position to display `helm', options are `bottom', `top', + ;; `left', or `right'. (default 'bottom) + dotspacemacs-helm-position 'bottom + ;; If non nil the paste micro-state is enabled. When enabled pressing `p` + ;; several times cycle between the kill ring content. (default nil) + dotspacemacs-enable-paste-micro-state nil + ;; Which-key delay in seconds. The which-key buffer is the popup listing + ;; the commands bound to the current keystroke sequence. (default 0.4) + dotspacemacs-which-key-delay 0.4 + ;; Which-key frame position. Possible values are `right', `bottom' and + ;; `right-then-bottom'. right-then-bottom tries to display the frame to the + ;; right; if there is insufficient space it displays it at the bottom. + ;; (default 'bottom) + dotspacemacs-which-key-position 'bottom + ;; If non nil a progress bar is displayed when spacemacs is loading. This + ;; may increase the boot time on some systems and emacs builds, set it to + ;; nil to boost the loading time. (default t) + dotspacemacs-loading-progress-bar t + ;; If non nil the frame is fullscreen when Emacs starts up. (default nil) + ;; (Emacs 24.4+ only) + dotspacemacs-fullscreen-at-startup nil + ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen. + ;; Use to disable fullscreen animations in OSX. (default nil) + dotspacemacs-fullscreen-use-non-native nil + ;; If non nil the frame is maximized when Emacs starts up. + ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil. + ;; (default nil) (Emacs 24.4+ only) + dotspacemacs-maximized-at-startup nil + ;; A value from the range (0..100), in increasing opacity, which describes + ;; the transparency level of a frame when it's active or selected. + ;; Transparency can be toggled through `toggle-transparency'. (default 90) + dotspacemacs-active-transparency 90 + ;; A value from the range (0..100), in increasing opacity, which describes + ;; the transparency level of a frame when it's inactive or deselected. + ;; Transparency can be toggled through `toggle-transparency'. (default 90) + dotspacemacs-inactive-transparency 90 + ;; If non nil unicode symbols are displayed in the mode line. (default t) + dotspacemacs-mode-line-unicode-symbols t + ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth + ;; scrolling overrides the default behavior of Emacs which recenters the + ;; point when it reaches the top or bottom of the screen. (default t) + dotspacemacs-smooth-scrolling t + ;; If non-nil smartparens-strict-mode will be enabled in programming modes. + ;; (default nil) + dotspacemacs-smartparens-strict-mode nil + ;; Select a scope to highlight delimiters. Possible values are `any', + ;; `current', `all' or `nil'. Default is `all' (highlight any scope and + ;; emphasis the current one). (default 'all) + dotspacemacs-highlight-delimiters 'all + ;; If non nil advises quit functions to keep server open when quitting. + ;; (default nil) + dotspacemacs-persistent-server nil + ;; List of search tool executable names. Spacemacs uses the first installed + ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'. + ;; (default '("ag" "pt" "ack" "grep")) + dotspacemacs-search-tools '("ag" "pt" "ack" "grep") + ;; The default package repository used if no explicit repository has been + ;; specified with an installed package. + ;; Not used for now. (default nil) + dotspacemacs-default-package-repository nil + + company-go-show-annotation t + company-minimum-prefix-length 0 + neo-window-position 'right + neo-dont-be-alone t + )) + + +(defun dotspacemacs/user-init () + "Initialization function for user code. +It is called immediately after `dotspacemacs/init'. You are free to put any +user code." + (push "~/.emacs.d/local" load-path) + ) + +(defun dotspacemacs/user-config () + "Configuration function for user code. + This function is called at the very end of Spacemacs initialization after +layers configuration. You are free to put any user code." + (setq dotspacemacs-additional-packages '(barak-theme)) + (defun kill-buffer-and-its-windows (buffer) + "Kill BUFFER and delete its windows. Default is `current-buffer'. +BUFFER may be either a buffer or its name (a string)." + (interactive (list (read-buffer "Kill buffer: " (current-buffer) 'existing))) + (setq buffer (get-buffer buffer)) + (if (buffer-live-p buffer) ; Kill live buffer only. + (let ((wins (get-buffer-window-list buffer nil t))) ; On all frames. + (when (and (buffer-modified-p buffer) + (fboundp '1on1-flash-ding-minibuffer-frame)) + (1on1-flash-ding-minibuffer-frame t)) ; Defined in `oneonone.el'. + (when (kill-buffer buffer) ; Only delete windows if buffer killed. + (dolist (win wins) ; (User might keep buffer if modified.) + (when (window-live-p win) + ;; Ignore error, in particular, + ;; "Attempt to delete the sole visible or iconified frame". + (condition-case nil (delete-window win) (error nil)))))) + (when (interactive-p) + (error "Cannot kill buffer. Not a live buffer: `%s'" buffer)))) + + (defun custom-neotree-enter-hide () + (interactive) + (neotree-enter) + (neotree-hide) + ) + + (defun custom-neotree-peek () + (interactive) + (neotree-enter) + (select-window-0) + ) + + (defadvice spacemacs//neotree-key-bindings (after add-custom-keybindings activate) + "add keybindings for enter-hide and peek functions" + (define-key evil-motion-state-local-map (kbd "RET") 'custom-neotree-enter-hide) + (define-key evil-motion-state-local-map (kbd "TAB") 'custom-neotree-peek) + ) + + ;; Make evil-mode up/down operate in screen lines instead of logical lines + (define-key evil-motion-state-map "j" 'evil-next-visual-line) + (define-key evil-motion-state-map "k" 'evil-previous-visual-line) + ;; Also in visual mode + (define-key evil-visual-state-map "j" 'evil-next-visual-line) + (define-key evil-visual-state-map "k" 'evil-previous-visual-line) + (define-key evil-normal-state-map "gc" 'kill-buffer-and-window) + (define-key evil-normal-state-map "gn" 'spacemacs/next-useful-buffer) + (define-key evil-normal-state-map "gp" 'spacemacs/previous-useful-buffer) + (define-key evil-normal-state-map "gt" 'neotree-find-project-root) + (define-key evil-normal-state-map "gw" 'evil-search-unbounded-word-forward) + (evil-ex-define-cmd "W[rite]" 'evil-write) + + (setq gofmt-command "goimports") + (setq flycheck-go-golint-executable "golintc.pl") + ; (setq tooltip-delay 0.2) + (setq flycheck-display-error 0.2) + (setq x-gtk-use-system-tooltips nil) + (setq flycheck-display-errors-function 'flycheck-display-error-messages-unless-error-list) + + (setq tramp-ssh-controlmaster-options "-o ControlMaster=auto -o ControlPath='tramp.%%C' -o ControlPersist=no") + + (defun on-after-init () + (unless (display-graphic-p (selected-frame)) + (set-face-background 'default "unspecified-bg" (selected-frame)))) + + (add-hook 'window-setup-hook 'on-after-init) + + (set-frame-parameter (selected-frame) 'alpha '(85 85)) + (add-to-list 'default-frame-alist '(alpha 85 85)) + + (setq diff-hl-side 'left) + +) + +;; ;; Do not write anything past this comment. This is where Emacs will +;; ;; auto-generate custom variable definitions. +;; (custom-set-variables +;; ;; custom-set-variables was added by Custom. +;; ;; If you edit it by hand, you could mess it up, so be careful. +;; ;; Your init file should contain only one such instance. +;; ;; If there is more than one, they won't work right. +;; '(ansi-color-names-vector +;; ["#3F3F3F" "#CC9393" "#7F9F7F" "#F0DFAF" "#8CD0D3" "#DC8CC3" "#93E0E3" "#DCDCCC"]) +;; '(custom-safe-themes +;; (quote +;; ("f3fdd9bfa4344c8264130b9f170938f878073bec453f3ad87577ca204be112fd" default))) +;; '(fci-rule-color "#383838" t) +;; '(vc-annotate-background "#2B2B2B") +;; '(vc-annotate-color-map +;; (quote +;; ((20 . "#BC8383") +;; (40 . "#CC9393") +;; (60 . "#DFAF8F") +;; (80 . "#D0BF8F") +;; (100 . "#E0CF9F") +;; (120 . "#F0DFAF") +;; (140 . "#5F7F5F") +;; (160 . "#7F9F7F") +;; (180 . "#8FB28F") +;; (200 . "#9FC59F") +;; (220 . "#AFD8AF") +;; (240 . "#BFEBBF") +;; (260 . "#93E0E3") +;; (280 . "#6CA0A3") +;; (300 . "#7CB8BB") +;; (320 . "#8CD0D3") +;; (340 . "#94BFF3") +;; (360 . "#DC8CC3")))) +;; '(vc-annotate-very-old-color "#DC8CC3")) +;; (custom-set-faces +;; ;; custom-set-faces was added by Custom. +;; ;; If you edit it by hand, you could mess it up, so be careful. +;; ;; Your init file should contain only one such instance. +;; ;; If there is more than one, they won't work right. +;; '(company-tooltip-common ((t (:inherit company-tooltip :weight bold :underline nil)))) +;; '(company-toolt +;; '(helm-candidate-number ((t (:background "chartreuse" :foreground "black"))))) +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(safe-local-variable-values (quote ((eval setenv "GOPATH" "/home/barak/src/agro"))))) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(company-tooltip-common ((t (:inherit company-tooltip :weight bold :underline nil)))) + '(company-tooltip-common-selection ((t (:inherit company-tooltip-selection :weight bold :underline nil)))) + '(match ((t (:weight bold)))) + '(show-paren-match ((t (:foreground "chartreuse"))))) diff --git a/.vimrc b/.vimrc index 161eda6..b905892 100644 --- a/.vimrc +++ b/.vimrc @@ -64,6 +64,9 @@ set t_Sb=ESC[4%dm "set relativenumber "set colorcolumn=81 "endif +" ** PATH SETTINGS ** + +let $RUST_SRC_PATH="/usr/src/rust/src/" " ** FILETYPE SETTINGS ** filetype off @@ -120,6 +123,8 @@ NeoBundle 't-yuki/vim-go-coverlay' NeoBundle 'tpope/vim-abolish' NeoBundle 'hylang/vim-hy' NeoBundle 'jiangmiao/auto-pairs' +NeoBundle 'rust-lang/rust.vim' +NeoBundle 'racer-rust/vim-racer' "https://git.wincent.com/command-t.git call neobundle#end() filetype plugin indent on " required diff --git a/.xinitrc b/.xinitrc index 12f81fb..7f22f3d 100644 --- a/.xinitrc +++ b/.xinitrc @@ -3,24 +3,31 @@ export PATH=$HOME/bin:$PATH xrdb -merge .Xdefaults & -gnome-settings-daemon & -xscreensaver -no-splash & +#gnome-settings-daemon & +#xscreensaver -no-splash & #kupfer --no-splash & -#rofi -key-run control-space -fuzzy -terminal run_terminal & +rofi -key-run control-space -fuzzy -terminal run_terminal & nm-applet & gnome-sound-applet & #setxkbmap -option ctrl:nocaps & xmodmap ~/.xmodmap & synclient PalmDetect=1 -#if [ -f ~/.xrandrrc ]; then - #~/.xrandrrc -#fi +# Running a really minimal arch system? This helps: + +/usr/lib/xfce4/notifyd/xfce4-notifyd & +pulseaudio --start & +blueman-applet & +wicd-gtk --tray & + +if [ -f ~/.xrandrrc ]; then + ~/.xrandrrc +fi ~/.fehbg & if command -v compton &>/dev/null; then compton -b --config ~/.compton.conf & fi #exec awesome -#exec i3 -exec dbus-launch --sh-syntax --exit-with-session i3 +exec i3 +#exec dbus-launch --sh-syntax --exit-with-session i3 diff --git a/.zprofile b/.zprofile index b6f92bc..c7c281c 100644 --- a/.zprofile +++ b/.zprofile @@ -6,7 +6,7 @@ # # remove /usr/games and /usr/X11R6/bin if you want -PATH=$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/$HOME/.gem/ruby/1.9.1/bin:$HOME/.go/bin:$HOME/.cabal/bin:/usr/lib/go/bin:$PATH; export PATH +PATH=$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/$HOME/.gem/ruby/1.9.1/bin:$HOME/.go/bin:$HOME/.cargo/bin:$HOME/.cabal/bin:/usr/lib/go/bin:$PATH; export PATH case `uname` in SunOS) UCB_PATH=/usr/sww/lang/acl:/usr/sww/lang/jdk-1.5.0/bin:/usr/openwin/bin:/usr/dt/bin:/usr/sww/opt/java/bin:/usr/sww/bin:/share/b/grading/bin:/share/b/grading/sbin:/share/b/runas/sun4u:/share/b/bin:/home/aa/projects/scheme/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin; export UCB_PATH diff --git a/bin/golintc b/bin/golintc index 1efa0a1..90b9c78 100755 --- a/bin/golintc +++ b/bin/golintc @@ -1,3 +1,22 @@ -#!/bin/bash +#!/usr/bin/env perl +use strict; +use warnings; -golint "$@" | grep -v "should have comment or be unexported" +my $a = join(" ", @ARGV); +my $cmd = "golint " . $a; +open(my $fh, '-|', $cmd) + or die "Could not run golint"; + +my $cnt = 0; +while (my $row = <$fh>) { + chomp $row; + if ($row !~ /should have comment or be unexported/) { + print "$row\n"; + $cnt++; + } +} + +if ($cnt > 0) { + exit 1; +} +exit 0; diff --git a/bin/mkgoenv b/bin/mkgoenv index 370b04c..c6db49b 100755 --- a/bin/mkgoenv +++ b/bin/mkgoenv @@ -21,4 +21,8 @@ gocode set lib-path \$SCRIPTPATH cd src/$1 EOF +cat < $2/.dir-locals.el. +((nil . ((eval . (setenv "GOPATH" "\`pwd\`"))))) +EOF + git clone https://$1 $2/src/$1