From 0d4dbd6fd132be2d33f2bdbe5f69a0ff580bdda6 Mon Sep 17 00:00:00 2001 From: James Booth Date: Sun, 13 Nov 2016 15:40:33 +0000 Subject: [PATCH] paste,py: add newline option issue #5 --- paste.py | 49 +++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 8 deletions(-) diff --git a/paste.py b/paste.py index e91e893..c425c94 100644 --- a/paste.py +++ b/paste.py @@ -10,18 +10,51 @@ import prof import tkinter as tk -def _cmd_paste(): - root = tk.Tk(baseName="") - root.withdraw() - result = root.clipboard_get() - prof.send_line(u'\u000A' + result) +def _cmd_paste(arg1=None, arg2=None): + if not arg1: + root = tk.Tk(baseName="") + root.withdraw() + result = root.clipboard_get() + newline = prof.settings_boolean_get("paste", "newline", False) + if newline: + prof.send_line(u'\u000A' + result) + else: + prof.send_line(result) + + return + + if arg1 == "newline": + if not arg2: + root = tk.Tk(baseName="") + root.withdraw() + result = root.clipboard_get() + prof.send_line(u'\u000A' + result) + elif arg2 == "on": + prof.settings_boolean_set("paste", "newline", True) + prof.cons_show("paste.py newline enabled") + elif arg2 == "off": + prof.settings_boolean_set("paste", "newline", False) + prof.cons_show("paste.py newline disabled") + else: + prof.cons_bad_cmd_usage("/paste") + + return + + prof.cons_bad_cmd_usage("/paste") def prof_init(version, status, account_name, fulljid): synopsis = [ - "/paste" + "/paste", + "/paste newline", + "/paste newline on|off" ] description = "Paste contents of clipboard." - args = [] + args = [ + [ "newline", "Send newline before clipboard contents." ], + [ "newline on|off", "Always send newline." ] + ] examples = [] - prof.register_command("/paste", 0, 0, synopsis, description, args, examples, _cmd_paste) + prof.register_command("/paste", 0, 2, synopsis, description, args, examples, _cmd_paste) + prof.completer_add("/paste", [ "newline" ]) + prof.completer_add("/paste newline", [ "on", "off" ])