;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\302\303\304\305\306DD\307\310\311\312\313&\210\314\315\316\317\320\321\312\322\323\324& \207" [require cl-lib custom-declare-variable haskell-process-load-or-reload-prompt funcall function #[0 "\300\207" [nil] 1] "Nil means there will be no prompts on starting REPL. Defaults will be accepted." :type boolean :group haskell-interactive custom-declare-group haskell nil "Major mode for editing Haskell programs." :link (custom-manual "(haskell-mode)") languages :prefix "haskell-"] 10) #@102 Package base directory of installed `haskell-mode'. Used for locating additional package data files. (defvar haskell-mode-pkg-base-dir (file-name-directory load-file-name) (#$ . 600)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\310\315\306\316&\210\300\317\302\303\320DD\321\306\316\310\322&\210\300\323\302\303\324DD\325\306\316\310\326&\210\300\327\302\303\330DD\331\306\332\310\333\334\335& \207" [custom-declare-variable haskell-completing-read-function funcall function #[0 "\300\207" [ido-completing-read] 1] "Default function to use for completion." :group haskell :type (choice (function-item :tag "ido" :value ido-completing-read) (function-item :tag "helm" :value helm--completing-read-default) (function-item :tag "completing-read" :value completing-read) (function :tag "Custom function")) haskell-process-type #[0 "\300\207" [auto] 1] "The inferior Haskell process type to use: ghci, stack, cabal, or auto.\n\nWhen set to 'auto (the default), the directory contents and\navailable programs will be used to make a best guess at the\nprocess type and the project directory.\n\nEmacs looks in the current directory and then in its parents for\na file \"cabal.sandbox.config\" or \"cabal.project\". its\nlocation is the project directory, and \"cabal\" will be used.\n\nOtherwise if a file \"stack.yaml\" is found, its location is the\nproject directory, and stack will be used\nOtherwise if a file \"*.cabal\" is found, its location is the\nproject directory, and cabal will be used.\nIf none of the above apply, ghc will be used.\n\n(The value cabal-new-repl is obsolete, equivalent to cabal-repl)." (choice (const auto) (const ghci) (const stack-ghci) (const cabal-repl) (const cabal-new-repl)) haskell-interactive haskell-process-wrapper-function #[0 "\300\207" [identity] 1] "Wrap or transform haskell process commands using this function.\n\nCan be set to a custom function which takes a list of arguments\nand returns a possibly-modified list.\n\nThe following example function arranges for all haskell process\ncommands to be started in the current nix-shell environment:\n\n (lambda (argv) (append (list \"nix-shell\" \"-I\" \".\" \"--command\" )\n (list (mapconcat 'identity argv \" \"))))\n\nSee Info Node `(emacs)Directory Variables' for a way to set this option on\na per-project basis." (choice (function-item :tag "None" :value identity) (function :tag "Custom function")) haskell-session-kill-hook #[0 "\300\207" [nil] 1] "Hook called when the interactive session is killed.\nYou might like to call `projectile-kill-buffers' here." hook haskell-doc-prettify-types #[0 "\300\207" [t] 1] "Replace some parts of types with Unicode characters like \"∷\"\nwhen showing type information about symbols." haskell-doc boolean :safe booleanp] 10) #@41 Hook for when the haskell process ends. (defvar haskell-process-ended-functions (list 'haskell-process-prompt-restart) (#$ . 3436)) (byte-code "\300\301\302\303\304\305\306\307&\210\310\311\312\313\314DD\315\306\301\316\317&\210\310\320\312\313\321DD\322\306\301\316\323&\210\310\324\312\313\325DD\326\306\301\316\327&\210\310\330\312\313\331DD\332\306\301\316\333&\210\310\334\312\313\335DD\336\306\301\316\337&\210\310\340\312\313\341DD\342\306\301\316\343&\210\310\344\312\313\345DD\346\306\301\316\347&\210\310\350\312\313\351DD\352\316\353\306\301&\210\310\354\312\313\355DD\356\316\353\306\301&\210\310\357\312\313\360DD\361\316\353\306\301&\210\310\362\312\313\363DD\364\316\353\306\301&\210\310\365\312\313\366DD\367\316\353\306\301&\210\310\370\312\313\371DD\372\316\353\306\301&\210\310\373\312\313\374DD\375\316\353\306\301&\210\310\376\312\313\377DD\201@\316\353\306\301&\210\310\201A\312\313\201BDD\201C\316\353\306\301&\210\310\201D\312\313\201EDD\201F\316\353\306\301&\210\310\201G\312\313\201HDD\201I\316\353\306\301&\210\310\201J\312\313\201KDD\201L\316\353\306\301&\210\310\201M\312\313\201NDD\201O\316\353\306\301&\210\310\201P\312\313\201QDD\201R\316\353\306\301&\210\310\201S\312\313\201TDD\201U\316\353\306\301&\210\310\201V\312\313\201WDD\201X\316\353\306\301&\210\310\201Y\312\313\201ZDD\201[\316\353\306\301&\210\310\201\\\312\313\201]DD\201^\316\353\306\301&\210\310\201_\312\313\201`DD\201a\316\353\306\301&\210\310\201b\312\313\201cDD\201d\316\353\306\301&\210\310\201e\312\313\201fDD\201g\316\347\306\301&\210\201h\201i\201j\302#\210\201k\211\2039\211@\201iN\2032\201jN\2042\201l\201j\201iN#\210A\266\202\202\210\201m\201i\201j\201n#\210\310\201j\312\313\201oDD\201p\316\347\306\301&\210\310\201q\312\313\201rDD\201s\316\201t\306\301&\210\310\201u\312\313\201vDD\201w\316\353\306\301&\210\310\201x\312\313\201yDD\201z\316\353\306\301&\210\310\201{\312\313\201|DD\201}\316\353\306\301&\210\310\201~\312\313\201DD\201\200\316\353\306\301&\210\310\201\201\312\313\201\202DD\201\203\316\353\306\301&\210\310\201\204\312\313\201\205DD\201\206\316\201\207\306\301&\210\310\201\210\312\313\201\211DD\201\212\306\307\316\201\213&\210\310\201\214\312\313\201\215DD\201\216\306\307\316\353&\207" [custom-declare-group haskell-interactive nil "Settings for REPL interaction via `haskell-interactive-mode'" :link (custom-manual "(haskell-mode)haskell-interactive-mode") :group haskell custom-declare-variable haskell-process-path-ghci funcall function #[0 "\300\207" [#1="ghci"] 1 #1#] "The path for starting ghci.\nThis can either be a single string or a list of strings, where the\nfirst elements is a string and the remaining elements are arguments,\nwhich will be prepended to `haskell-process-args-ghci'." :type (choice string (repeat string)) haskell-process-path-cabal #[0 "\300\207" [#2="cabal"] 1 #2#] "Path to the `cabal' executable.\nThis can either be a single string or a list of strings, where the\nfirst elements is a string and the remaining elements are arguments,\nwhich will be prepended to `haskell-process-args-cabal-repl'." (choice string (repeat string)) haskell-process-path-stack #[0 "\300\207" [#3="stack"] 1 #3#] "The path for starting stack.\nThis can either be a single string or a list of strings, where the\nfirst elements is a string and the remaining elements are arguments,\nwhich will be prepended to `haskell-process-args-stack-ghci'." (choice string (repeat string)) haskell-process-args-ghci #[0 "\300\207" [("-ferror-spans")] 1] "Any arguments for starting ghci." (repeat (string :tag "Argument")) haskell-process-args-cabal-repl #[0 "\300\207" [("--ghc-option=-ferror-spans")] 1] "Additional arguments for `cabal repl' invocation.\nNote: The settings in `haskell-process-path-ghci' and\n`haskell-process-args-ghci' are not automatically reused as `cabal repl'\ncurrently invokes `ghc --interactive'. Use\n`--with-ghc=' if you want to use a different\ninteractive GHC frontend; use `--ghc-option=' to\npass additional flags to `ghc'." (repeat (string :tag "Argument")) haskell-process-args-stack-ghci #[0 "\300\207" [("--ghci-options=-ferror-spans" "--no-build" "--no-load")] 1] "Additional arguments for `stack ghci' invocation." (repeat (string :tag "Argument")) haskell-process-do-cabal-format-string #[0 "\300\207" [#4=":!cd %s && %s"] 1 #4#] "The way to run cabal commands. It takes two arguments -- the directory and the command.\nSee `haskell-process-do-cabal' for more details." string haskell-process-log #[0 "\300\207" [nil] 1] "Enable debug logging to \"*haskell-process-log*\" buffer." boolean haskell-process-show-debug-tips #[0 "\300\207" [t] 1] "Show debugging tips when starting the process." haskell-process-show-overlays #[0 "\300\207" [t] 1] "Show in-buffer overlays for errors/warnings.\nFlycheck users might like to disable this." haskell-notify-p #[0 "\300\207" [nil] 1] "Notify using notifications.el (if loaded)?" haskell-process-suggest-no-warn-orphans #[0 "\300\207" [t] 1] "Suggest adding -fno-warn-orphans pragma to file when getting orphan warnings." haskell-process-suggest-hoogle-imports #[0 "\300\207" [nil] 1] "Suggest to add import statements using Hoogle as a backend." haskell-process-suggest-haskell-docs-imports #[0 "\300\207" [nil] 1] "Suggest to add import statements using haskell-docs as a backend." haskell-process-suggest-add-package #[0 "\300\207" [t] 1] "Suggest to add packages to your .cabal file when Cabal says it\nis a member of the hidden package, blah blah." haskell-process-suggest-language-pragmas #[0 "\300\207" [t] 1] "Suggest adding LANGUAGE pragmas recommended by GHC." haskell-process-suggest-remove-import-lines #[0 "\300\207" [nil] 1] "Suggest removing import lines as warned by GHC." haskell-process-suggest-overloaded-strings #[0 "\300\207" [t] 1] "Suggest adding OverloadedStrings pragma to file when getting type mismatches with [Char]." haskell-process-check-cabal-config-on-load #[0 "\300\207" [t] 1] "Check changes cabal config on loading Haskell files and\nrestart the GHCi process if changed.." haskell-process-prompt-restart-on-cabal-change #[0 "\300\207" [t] 1] "Ask whether to restart the GHCi process when the Cabal file\nhas changed?" haskell-process-auto-import-loaded-modules #[0 "\300\207" [nil] 1] "Auto import the modules reported by GHC to have been loaded?" haskell-process-reload-with-fbytecode #[0 "\300\207" [nil] 1] "When using -fobject-code, auto reload with -fbyte-code (and\nthen restore the -fobject-code) so that all module info and\nimports become available?" haskell-process-use-presentation-mode #[0 "\300\207" [nil] 1] "Use presentation mode to show things like type info instead of\n printing to the message area." haskell-process-suggest-restart #[0 "\300\207" [t] 1] "Suggest restarting the process when it has died" haskell-interactive-popup-errors #[0 "\300\207" [t] 1] "Popup errors in a separate buffer." haskell-interactive-mode-collapse #[0 "\300\207" [nil] 1] "Collapse printed results." haskell-interactive-types-for-show-ambiguous #[0 "\300\207" [t] 1] "Show types when there's no Show instance or there's an\nambiguous class constraint." haskell-interactive-prompt #[0 "\300\207" [#5="λ> "] 1 #5#] "The prompt to use." defvaralias haskell-interactive-prompt2 haskell-interactive-prompt-cont (saved-value saved-variable-comment) put make-obsolete-variable "17.1" #[0 "\301\302\303#\207" [haskell-interactive-prompt replace-regexp-in-string "> $" "| "] 4] "The multi-line prompt to use.\nThe default is `haskell-interactive-prompt' with the last > replaced with |." haskell-interactive-mode-eval-mode #[0 "\300\207" [nil] 1] "Use the given mode's font-locking to render some text." (choice function (const :tag "None" nil)) haskell-interactive-mode-hide-multi-line-errors #[0 "\300\207" [nil] 1] "Hide collapsible multi-line compile messages by default." haskell-interactive-mode-delete-superseded-errors #[0 "\300\207" [t] 1] "Whether to delete compile messages superseded by recompile/reloads." haskell-interactive-mode-include-file-name #[0 "\300\207" [t] 1] "Include the file name of the module being compiled when\nprinting compilation messages." haskell-interactive-mode-read-only #[0 "\300\207" [t] 1] "Non-nil means most GHCi/haskell-interactive-mode output is read-only.\nThis does not include the prompt. Configure\n`haskell-interactive-prompt-read-only' to change the prompt's\nread-only property." haskell-interactive-prompt-read-only #[0 "\207" [haskell-interactive-mode-read-only] 1] "Non-nil means the prompt (and prompt2) is read-only." haskell-import-mapping #[0 "\300\207" [nil] 1] "Support a mapping from module to import lines.\n\nE.g. '((\"Data.Map\" . \"import qualified Data.Map as M\nimport Data.Map (Map)\n\"))\n\nThis will import\n\nimport qualified Data.Map as M\nimport Data.Map (Map)\n\nwhen Data.Map is the candidate.\n\n" (repeat (cons (string :tag "Module name") (string :tag "Import lines"))) haskell-language-extensions #[0 "\300\207" [nil] 1] "Language extensions in use. Should be in format: -XFoo,\n-XNoFoo etc. The idea is that various tools written with HSE (or\nany haskell-mode code that needs to be aware of syntactical\nproperties; such as an indentation mode) that don't know what\nextensions to use can use this variable. Examples: hlint,\nhindent, structured-haskell-mode, tool-de-jour, etc.\n\nYou can set this per-project with a .dir-locals.el file" (repeat 'string) haskell-stylish-on-save #[0 "\300\207" [nil] 1] "Whether to run stylish-haskell on the buffer before saving.\nIf this is true, `haskell-add-import' will not sort or align the\nimports."] 8) #@141 The path which is considered as project root, this is determined by the presence of a *.cabal file or stack.yaml file or something similar. (defvar inferior-haskell-root-dir nil (#$ . 13186)) #@256 Looks for cabal and stack spec files. When found, returns a pair (TAG . DIR) where TAG is 'cabal-project, 'cabal-sandbox. 'cabal, or 'stack; and DIR is the directory containing cabal or stack file. When none found, DIR is nil, and TAG is 'ghc (defalias 'haskell-build-type #[0 "\301\302\"\301\303\"\301\304\"\301\305\"\203\306\307!\203\310B\207\203,\306\307!\203,\311B\207\203:\306\312!\203:\313B\207\211\203H\306\307!\203H\314B\207\306\315!\203Q\316C\207\317\320!\207" [default-directory locate-dominating-file "cabal.project" "cabal.sandbox.config" "stack.yaml" #[257 "\300\301\302!\"\207" [cl-find-if #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data ".\\.cabal\\'" nil t string-match] 8 "\n\n(fn F)"] directory-files] 5 "\n\n(fn D)"] executable-find "cabal" cabal-project cabal-sandbox "stack" stack cabal "ghc" ghc error "Could not find any installation of GHC."] 6 (#$ . 13385)]) #@186 Return `haskell-process-type', or a guess if that variable is 'auto. Converts the obsolete 'cabal-new-repl to its equivalent 'cabal-repl. May also set `inferior-haskell-root-dir' (defalias 'haskell-process-type #[0 "\303\267\202\304\305!\210\306\211\207\307 \211@A\211\206 \310\236A\207\207" [haskell-process-type default-directory inferior-haskell-root-dir #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (cabal-new-repl 6 auto 14)) warn "haskell-process-type has obsolete value 'cabal-new-repl, changing it to 'cabal-repl" cabal-repl haskell-build-type ((cabal-project . cabal-repl) (cabal-sandbox . cabal-repl) (cabal . cabal-repl) (stack . stack-ghci) (ghc . ghci))] 6 (#$ . 14328)]) (provide 'haskell-customize)