6
6
; ; Keywords: extensions, tools
7
7
; ; URL: https://github.com/kaiwk/leetcode.el
8
8
; ; Package-Requires: ((emacs "26") (dash "2.16.0") (graphql "0.1.1") (spinner "1.7.3") (aio "1.0") (log4e "0.3.3"))
9
- ; ; Version: 0.1.12
9
+ ; ; Version: 0.1.13
10
10
11
11
; ; This program is free software; you can redistribute it and/or modify
12
12
; ; it under the terms of the GNU General Public License as published by
57
57
58
58
;;;### autoload
59
59
(defun leetcode-toggle-debug ()
60
+ " Toggle debug."
60
61
(interactive )
61
62
(if (leetcode--log-debugging-p)
62
63
(progn
69
70
(message " leetcode enable debug " ))))
70
71
71
72
(defun leetcode--install-my-cookie ()
73
+ " Install leetcode dependencies."
72
74
(let ((async-shell-command-display-buffer t ))
73
75
(async-shell-command
74
76
" pip3 install my_cookies"
75
77
(get-buffer-create " *leetcode-install*" ))))
76
78
77
79
(defun leetcode--check-deps ()
80
+ " Check if all dependencies installed."
78
81
(if (executable-find " my_cookies" )
79
82
t
80
83
(leetcode--install-my-cookie)
@@ -558,6 +561,8 @@ see: https://github.com/skeeto/emacs-aio/issues/3."
558
561
(point-min ) (point-max ))))
559
562
560
563
(defun leetcode--get-slug-title-before-try/submit (code-buf )
564
+ " Get slug title before try or submit with CODE-BUF.
565
+ LeetCode require slug-title as the request parameters."
561
566
(with-current-buffer code-buf
562
567
(if leetcode-save-solutions
563
568
(file-name-base (cadr (split-string (buffer-name ) " _" )))
@@ -885,10 +890,10 @@ python3, ruby, rust, scala, swift.")
885
890
mysql, mssql, oraclesql." )
886
891
887
892
(defvar leetcode-directory " ~/leetcode"
888
- " Directory to save solutions" )
893
+ " Directory to save solutions. " )
889
894
890
895
(defvar leetcode-save-solutions nil
891
- " If it's t, save leetcode solutions to `leetcode-directory' " )
896
+ " If it's t, save leetcode solutions to `leetcode-directory' . " )
892
897
893
898
(defvar leetcode--lang leetcode-prefer-language
894
899
" LeetCode programming language or sql for current problem internally.
@@ -927,6 +932,7 @@ python3, ruby, rust, scala, swift, mysql, mssql, oraclesql.")
927
932
title-with-suffix)))
928
933
929
934
(defun leetcode--get-code-buffer (buf-name )
935
+ " Get code buffer by BUF-NAME."
930
936
(if (not leetcode-save-solutions)
931
937
(get-buffer-create buf-name)
932
938
(unless (file-directory-p leetcode-directory)
@@ -936,13 +942,15 @@ python3, ruby, rust, scala, swift, mysql, mssql, oraclesql.")
936
942
buf-name))))
937
943
938
944
(defun leetcode--get-problem (slug-title )
945
+ " Get problem from `leetcode--all-problems' by SLUG-TITLE."
939
946
(seq-find (lambda (p )
940
947
(equal slug-title
941
948
(leetcode--slugify-title
942
949
(plist-get p :title ))))
943
950
(plist-get leetcode--all-problems :problems )))
944
951
945
952
(defun leetcode--get-problem-id (slug-title )
953
+ " Get problem id by SLUG-TITLE."
946
954
(let ((problem (leetcode--get-problem " two-sum" )))
947
955
(plist-get problem :id )))
948
956
0 commit comments