[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/arbitools a833441 10/29: * packages/arbitools: Add func
From: |
Stefan Monnier |
Subject: |
[elpa] externals/arbitools a833441 10/29: * packages/arbitools: Add functions and menus |
Date: |
Sun, 29 Nov 2020 19:00:34 -0500 (EST) |
branch: externals/arbitools
commit a8334416d651f37a2fd9a7cfbc073f81254e5520
Author: David Gonzalez Gandara <dggandara@member.fsf.org>
Commit: David Gonzalez Gandara <dggandara@member.fsf.org>
* packages/arbitools: Add functions and menus
---
arbitools.el | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 52 insertions(+), 2 deletions(-)
diff --git a/arbitools.el b/arbitools.el
index b19c29e..6c30404 100644
--- a/arbitools.el
+++ b/arbitools.el
@@ -64,6 +64,54 @@
;; (shell-command (concat (expand-file-name "arbitools-standings.py") " -i "
buffer-file-name))) ;this is to use the actual path
(call-process "arbitools-standings.py" nil nil nil "-i" buffer-file-name))
+(defun arbitools-delete-round (round)
+ "Delete round"
+ (interactive "sround: ")
+ (beginning-of-buffer)
+ (while (re-search-forward "^001" nil t)
+ (forward-char (+ 88 (* (- (string-to-number round) 1) 10)))
+ (delete-char 10)
+ (insert " "))
+ (beginning-of-buffer))
+
+(defun arbitools-insert-result (round white black result)
+ "Insert a result"
+ (interactive "sround: \nswhite: \nsblack: \nsresult: ")
+ (beginning-of-buffer)
+ (while (re-search-forward "^001" nil t)
+ (forward-char 4) ;; rank number
+ ;; (print (format "%s" white))
+ (when (string= white (thing-at-point 'word))
+ ;;go to first round taking into account the cursor is in the rank number
+ (forward-char (+ 85 (* (- (string-to-number round) 1) 10)))
+ (insert " ") ;; replace the first positions with spaces
+ (delete-char 2) ;; delete the former characters
+ ;; make room for bigger numbers
+ (cond ((= 2 (length black))
+ (backward-char 1))
+ ((= 3 (length black))
+ (backward-char 2)))
+ (insert (format "%s w %s" black result))
+ (delete-char 5)
+ ;; adjust when numbers are longer
+ (cond ((= 2 (length black)) (delete-char 1))
+ ((= 3 (length black)) (delete-char 2))))
+ (when (string= black (thing-at-point 'word))
+ ;;go to first round taking into account the cursor is in the rank number
+ (forward-char (+ 85 (* (- (string-to-number round) 1) 10)))
+ (insert " ") ;; replace the first positions with spaces
+ (delete-char 2) ;; delete the former characters
+ ;; make room for bigger numbers
+ (cond ((= 2 (length white)) (backward-char 1))
+ ((= 3 (length white)) (backward-char 2)))
+ (cond ((string= "1" result) (insert (format "%s b 0" white)))
+ ((string= "0" result) (insert (format "%s b 1" white))))
+ (delete-char 5)
+ ;; adjust when numbers are longer
+ (cond ((= 2 (length white)) (delete-char 1))
+ ((= 3 (length white)) (delete-char 2)))))
+ (beginning-of-buffer))
+
(defun arbitools-it3 ()
"Get the IT3 tournament report."
(interactive)
@@ -76,7 +124,7 @@
(defvar arbitools-mode-map
(let ((map (make-sparse-keymap)))
- (define-key map (kbd "C-c i") 'coffee-compile-buffer)
+ (define-key map (kbd "C-c i") 'arbitools-it3)
map)
"Keymap for Arbitools major mode.")
@@ -84,9 +132,11 @@
(easy-menu-define arbitools-mode-menu arbitools-mode-map
"Menu for Arbitools mode"
'("Arbitools"
+ ["Insert Result" arbitools-insert-result]
+ ["Delete Round" arbitools-delete-round]
+ "---"
["Get It3 form Report" arbitools-it3]
["Get FEDA Ratinf file" arbitools-fedarating]
- "---"
))
- [elpa] branch externals/arbitools created (now 62fe08e), Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 9de6cfe 01/29: [ELPA] new package: arbitools, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 5a67c19 03/29: [ELPA]: new package: arbitools, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 46d5669 04/29: * packages/arbitools.el: correct code syntax issues, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 538ccb4 02/29: [ELPA]: new package: arbitools, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 37119b0 05/29: * arbitools/arbitools.el: Fix checkdoc warnings and quoting problems, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools eb1011a 07/29: * packages/arbitools: added some new functions and menus, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools dd5ddb9 08/29: * packages/arbitools: endoffile bug fixed, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools b61035e 13/29: packages/arbitools.el: Added new functions, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 16a125c 12/29: packages/arbitools.el: Applied suggestions, improved functions, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools a833441 10/29: * packages/arbitools: Add functions and menus,
Stefan Monnier <=
- [elpa] externals/arbitools 34c912c 20/29: *arbitools.el: Some functions improved, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 7593f76 22/29: arbitools.el: added new function, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 453b572 11/29: packages/arbitools: Added new functions, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 0a079b7 09/29: * packages/arbitools: added menu option, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 97afb42 16/29: * arbitools/arbitools.el: Remove unused vars, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 5f6a9b7 25/29: * packages/arbitools/arbitools.el: Various code tweaks, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 5d87f5b 23/29: arbitools.el: added support for ARPO tiebreak, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 80b7021 17/29: packages/arbitools.el: minor fixes, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools d9e940b 06/29: * packages/arbitools.el: fix coding issues, Stefan Monnier, 2020/11/29
- [elpa] externals/arbitools 6f1383d 15/29: packages/arbitools.el: Fixed some bugs, Stefan Monnier, 2020/11/29