Module: GemDocs::Emacs

Defined in:
lib/gem_docs/emacs.rb

Class Method Summary collapse

Class Method Details

.export_changelogObject



40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/gem_docs/emacs.rb', line 40

def self.export_changelog
  expr = <<~ELISP
    (save-window-excursion
      (with-current-buffer (find-file-noselect "#{CHANGELOG_ORG}")
        (save-buffer)
        (require 'ox-gfm)
        (org-gfm-export-to-markdown))
       "Export CHANGELOG complete")
  ELISP

  system("emacsclient", "--quiet", "--eval", expr)
end

.export_readmeObject



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/gem_docs/emacs.rb', line 23

def self.export_readme
  expr = <<~ELISP
    (save-window-excursion
      (with-current-buffer (find-file-noselect "#{README_ORG}")
        (save-buffer)
        (require 'ox-gfm)
        (org-gfm-export-to-markdown))
      (with-current-buffer (find-file-noselect "#{CHANGELOG_ORG}")
        (save-buffer)
        (require 'ox-gfm)
        (org-gfm-export-to-markdown))
       "Export README complete")
  ELISP

  system("emacsclient", "--quiet", "--eval", expr)
end

.session_nameObject



53
54
55
# File 'lib/gem_docs/emacs.rb', line 53

def self.session_name
  "*#{Repo.from_gemspec.name}_session*"
end

.tangleObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/gem_docs/emacs.rb', line 5

def self.tangle
  expr = <<~ELISP
    (save-window-excursion
      (if (get-buffer "#{session_name}")
        (kill-buffer "#{session_name}"))
      (with-current-buffer (find-file-noselect "#{README_ORG}")
        (save-buffer)
        (require 'ob-ruby)
        (org-babel-execute-buffer)
        (save-buffer)
        "OK"))
  ELISP

  unless system("emacsclient", "--quiet", "--eval", expr)
    abort "Babel execution failed"
  end
end