Received: from mout.gmx.net (mout.gmx.net [212.227.17.20]) by h1439878.stratoserver.net (8.14.4/8.14.4/Debian-2ubuntu2.1) with ESMTP id t4GI63CM014054 for ; Sat, 16 May 2015 20:06:04 +0200 Received: from relay2.uni-heidelberg.de ([129.206.210.211]) by mx-ha.gmx.net (mxgmx108) with ESMTPS (Nemesis) id 0MIxjp-1YvcHU3Jij-002bSj for ; Sat, 16 May 2015 20:05:58 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [129.206.100.94]) by relay2.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id t4GI4CcI025615 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 16 May 2015 20:04:12 +0200 Received: from listserv.uni-heidelberg.de (listserv.uni-heidelberg.de [127.0.0.1]) by listserv.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id t4GFvtdo027959; Sat, 16 May 2015 20:04:12 +0200 Received: by LISTSERV.UNI-HEIDELBERG.DE (LISTSERV-TCP/IP release 16.0) with spool id 12114880 for LATEX-L@LISTSERV.UNI-HEIDELBERG.DE; Sat, 16 May 2015 20:04:12 +0200 Received: from relay.uni-heidelberg.de (relay.uni-heidelberg.de [129.206.100.212]) by listserv.uni-heidelberg.de (8.13.8/8.13.8) with ESMTP id t4GHsCAD002456 for ; Sat, 16 May 2015 19:54:12 +0200 Received: from mail-ob0-f179.google.com (mail-ob0-f179.google.com [209.85.214.179]) by relay.uni-heidelberg.de (8.14.1/8.14.1) with ESMTP id t4GHs5vo029210 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=FAIL) for ; Sat, 16 May 2015 19:54:08 +0200 Received: by obfe9 with SMTP id e9so98351938obf.1 for ; Sat, 16 May 2015 10:54:05 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=e254NVFPXY/L+vuoNuPZzbFYw1pc56WmCljL29Rx7ek=; b=kWdLpgSSde6z5pKQMNEtFBSsnBaWWVItvw+4kR+zFGTh8Z3PIeYYnTm3m274OReAJ3 1tYlyN7e0JWZ990xnzvstFIEFJvytvG6v7cDZjHxEO9WT3Pgs634zVr/Wjg38INVy8Kh 9hS4hKe1h3b6G49Hb3/JpSv5zPhd1n5HuDy7a4IAGQo8PSRgzYPAlNatsiO8ABxjysqO ywueU8AHDPrv/b+7Df131TvsaZwuQHKrWkDdrYFBIh6vJUcsQhaAJigNjZArsEVc+irr S4oivLdqcqGnO7aoaPiH5UwnEPQWcNczW4/l7eIT0zWCrOQiSW2KrEzNLjGV9WraDz7N p+8w== X-Gm-Message-State: ALoCoQnOqw5ca6mpfZwVcJeF7fEWYfcmop7R9T5diuX8jj6qtoq48h2idp56lxJ0IPJCIY5pgz7t MIME-Version: 1.0 X-Received: by 10.60.47.34 with SMTP id a2mr13265854oen.48.1431798844972; Sat, 16 May 2015 10:54:04 -0700 (PDT) Received: by 10.202.204.2 with HTTP; Sat, 16 May 2015 10:54:04 -0700 (PDT) Content-Type: text/plain; charset=UTF-8 X-MIME-Autoconverted: from quoted-printable to 8bit by listserv.uni-heidelberg.de id t4GHsCAD002457 Message-ID: Date: Sat, 16 May 2015 19:54:04 +0200 Reply-To: Mailing list for the LaTeX3 project Sender: Mailing list for the LaTeX3 project From: Manuel Blanco Subject: New arguments for sub and superscripts in xparse To: LATEX-L@LISTSERV.UNI-HEIDELBERG.DE Precedence: list List-Help: , List-Unsubscribe: List-Subscribe: List-Owner: List-Archive: X-MIME-Autoconverted: from 8bit to quoted-printable by relay2.uni-heidelberg.de id t4GI4CcI025615 Envelope-To: X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=V3; X-GMX-Antivirus: 0 (no virus found) X-UI-Filterresults: notjunk:1;V01:K0:uZOuhQbJnIM=:/EOMOecJsHMMMUpJUu5xdNFVxP Lhzj1FeNqh1yaW/R5aYqpeczE0GrK9q0ZfqZbOMql8LAEPvO27yh31pe7oBGvPVdhh8X7OnnI 9we0kjv2At9uaov/q53UeXwMAmSt67T8IqDIpT2AeKAiVBUJvx2ZAEQi9bMIqwsT+FQ3Ts3GS tOAopsPlPOdnY0HHprnOKe8WQOxmPnQHjEiwwn1yv5nZxo+9ULaSUK4yi3Skj9BWLsk9I258g G0DgBWQkeNci+T/i0iR91qOXwvW5HziPUcBVnydwHysz1SJknMuWjo0MN8MyfrtjeIX0AgpbK O/Kx8/cAQ5YuSPX/hDIWlzgbTnTfYRlTiQwgQIi+3TZk3Z+LaPlM1sNxuYVIFPer3Xs7j/JmA tusQf+/zx/MyoyPa/5IUq/Lmd86GR3Db5/VAZTOCEvwIo9jmQkqw0UWXm9vjquKjhx2zz+6Yq 708YWaGOc2EmU2luDKyzCPCbf9mcD9bTmePdrZGWxbrmF4EXdNQgMhVZvSKdPgMStpY0cmLNx I6ESIhYMbyN7n2NtF6HxZjU8mAFnp6SLekXqZQz1xg9/E+TmbrqI+Q5nJCmape/nXjJtfHfeo pKCpVmR3cns7Sirds2oczvOPg/jLcaP+PmOLKe2QGbxgbCz77gN2H4aPh6+Xr92rtbMallxhv VeDPSug2vJgfDUcT1cgh8EP8LTMsqJD12zpubqOzsFaPXwwHrib7eRJHoI2fM+nGrAi0z07uW 9yAz7efjLLlZA7M4+tyh4BkWVZ2Gh+gP5HO/eJnZmqILiNe3R7zSSbN2cmnkeAR18Wd1HrUJ4 iiX6+smgE0FgENALwTzWBA2WOnsKWTkzJw7BmFrV9ugJeqTSI9PgvmxhJAydUvhLKkj6LFKXm nJZD0otwQ5CId+YIC7UDXals0KtI+pP1WRnxK/79bYOtRv7TqXvkq2tQTbRuj8usomvsqmZRY zNXQ4wR/kDk05BV7xZNdfHIQ1/aZqO3wd9Yp8Es0OCoZ0U4qPUb0Sscft1VFSnaZOQ/TPXMEc 8UM1DXIe1e3YCBi+qt+6qvAa7vEMaZOh2npqomXojyZq1scrU35a0R7NGFJeF/5V839PpKZx7 V8p4kj3/UAH0d8Aq1VF1DLwoxPlJVrQ0gzTEewgiSTbnSo2ZfbQg5gpND+EP36qzE5TqjWixw tszpngUKW+zxZ3NC4/anOMzpKZDcunI8Jnh2PSMnNe2ezY/7wfWjxx3wGD9C/9xn8CycJUyJJ vdLe8hvZXEwDO2f6rjf2ZNRXpVjdPIEWe2hZ29HRzRxCPykjJohrf8XHs1HEuwxNsqELYe0Xb fP+6/zuSLrkV/hf94octuhNpwIg5fvN7S2ASO+DcCYOZU42IA0aQlqLBMlW35tfHn5sm+HfgI xrD5UwX3ZKvx5ncuwQHZiEyOEWEEX5Cse1gUAzvOuturOKGuqUD0VR6abHKwMPPF3CdIjpSX7 VhEHj83akV9aYyp1rqa8/RDe94Ykgyn3omGIBIQC4/KKaFeMcq X-UI-Loop:V01:i6vg74E//lk=:LlkwbpBMXcWvj0t8BBztSZLlAQ36UOWTMhy10hntF1M= X-UI-Out-Filterresults: notjunk:1; X-Scanned-By: MIMEDefang 2.71 on 85.214.41.38 Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by h1439878.stratoserver.net id t4GI63CM014054 Status: R X-Status: X-Keywords: X-UID: 7712 Hello, I'm looking for two new argument types in xparse (say L and U, but you can choose the names yourself) to grab sub or superscripts as optional arguments. I write here since I'm looking for non-hackish solutions, so probably written in the same way as xparse itself. For instance, if we have a command \foo defined with { m o L U } it should be able to grab \foo{a}[b]_{c}^{d} with `c` and `d` as #3 and #4. That is, that arguments should check for tokens _ and ^ (like t_ and t^) and in case they are pressent grab the next argument. There's a problem with the naming, since l and u are already taken, L and U should be followed by the “default” of the optional arguments, but that would live us without the option to say \IfValueT{#3}{\sb{\mathrm{#3}}}. I think that with L{} and U{} is enough (but if you think of a better naming tell!). And I think that's all the important. --- (Now this are just thoughts.) In any case, may be not now, but in the future, it would be nice to have certain control over subscripts (and super..). Right now subscripts are the most “uncontrolled” optional arguments. But xparse seems pretty good to add control over them within a macro. In an ideal future it would be perfect if xparse could process them even if they are in different order like ^{a}_b, but for now it's okey if they are just grabbed in the order they are written (i.e., L{} U{} => _{a}^{bc}). That, with an acceptable interface, would bring us certain power about limits within the commands we define. Thinking, it may be better suited as a package alone and not for xparse. Thanks! Manuel