GNU TEXMACS , a Free Software Platform for Scientific Editing∗

GNU TEXMACS , a Free Software Platform for Scientific Editing∗

GNU TEXMACS, a free software platform for scientific editing∗ by François Poulain LIX Laboratory, École Polytechnique, MAX Team Email: [email protected] ∗ . This document has been written using the GNU TEXMACS text editor (see www.texmacs.org). The TEXMACS project in summary Inspired from Emacs and LAT X. • E Project initiated by Joris van der Hoeven, in 90’s. • Licenced under GNU GPL v3. • Cross-platform (works under GNU/Linux, Windows, MacOS and some other unices). • Mainly developed within MAX team, at LIX laboratory (in south of Paris). • About 10 regular developers/contributors. • 347 000 lines of code (almost Scheme and C++). • Popcon Debian : around 1500 regular users. • Current version : T X 1.0.7.19. • E MACS Website : www.texmacs.org. • Users’ mailling list : [email protected]. • Example of use Anyone caught using formulas such as x + y = √x + y or 1 = 1 + 1 will fail. √ √ x + y x y The binomial theorem is n n ( x + y) n = xk yn − k . k kX=0 A favorite sum of most mathematicians is ∞ 1 π2 = . n2 6 nX=1 Likewise a popular integral is ∞ 2 e − x d x = √π Z−∞ Theorem 1. The square of any real number is non-negative. Proof. Any real number x satisfies x > 0, x = 0, or x < 0. If x = 0, then x2 = 0 0. If x > 0 then as a positive time a positive is positive we have x2 = x x > 0. If x < 0 then x > 0 and so by what≥ we have just done x2 = ( x) 2 > 0. − − So in all cases x2 0. ≥ See also : Noeth.tm A structured word processor Inspired from LATEX: We describe a document whereas drawing it (content/presentation separation). • The content rendering is contextualized. • We use stylesheets. • But: It’s WYSIWYG ! (no need to struggle with/against esoteric *T X compiler). • E Not Ascii-only (scientific documents (even maths!!) has a right to pictures!). • Abilities for interactive contents. • Revised ergonomy (structured {browsing, editing, selecting}, menus and toolbars contextualized). • And also main features needed in a word processor: orthographic correction; • slides mode; • revision managment; • etc. • Mathematic typography Inputing formulas (e.g. fraction): Via the menus : e.g. Insert Fraction. • → Via LAT X ‘compatibility mode” : e.g. \ F R A C Return . • E Via T X shortcuts : e.g. Alt+F . • E MACS Efficient symbols inputing (in math mode $ ) : Via graphical mimetism : e.g. = > insert ; ~ - insert . • ⇒ ≃ Via some variants : e.g. = > Tab insert ; A Tab insert α. • ⇓ Via structure variants : e.g. switching between a b and a b . 0 c 0 c • Comparison with LAT X : • E A L TEX TEXMACS i α p(x) = \sum \alpha^i Shift+F5 Shift+S A Tab ^ I a 0P a = 1 a \neq 0 \Leftrightarrow a = 1 A = / 0 < = > A = 1 ⇒ Semantic editing : ω O( O( d + + log2 q) ω O( d + + log2 q) Extensibility Document programming: Variable assignation: assign speed Vaero . • h | | i Macros assignation: assign pderiv macro what by ∂what • h | |h | | | ∂by ii pderiv speed t ∂Vaero h |h i| i ⇒ ∂t Local assignation: with color red Attention !!! Attention !!! • h | | | i ⇒ TEXMACS programming: T X is dynamically extensible via Scheme. • E MACS Scheme] ( kbd-map ( "t h m" ( make ’theorem))))) Any T X buffer is accessible and modifiable from Scheme. • E MACS Scheme] ( tree-replace ( buffer-tree) ’( concat (TeXmacs) " programming:" ) "Foo bar" ) Scheme] ( tree-replace ( buffer-tree) "Foo bar" ’( concat (TeXmacs) " programming:" )) Interface for symbolic and algebraic calculus Welcome to Mathemagix-light 0.4 This software falls under the GNU General Public License It comes without any warranty whatsoever www.mathemagix.org (c) 2001-2010 Mmx] use "symbolix" Mmx] derive( p( x) x , x) ′ p ( x) x x + log ( p( x)) p( x) p( x) a b Mmx] c d a d − b c a 0 d Mmx] b c e a d b d + c e a 0 Mmx] b c a 0 b c Interface for numeric calculus ___________________________________________ scilab- 5.3.3 Consortium Scilab ( DIGITEO) Copyright ( c) 1989- 2011 ( INRIA) Copyright ( c) 1989- 2007 ( ENPC) ___________________________________________ -->A=[ 0, 1 ; 0, 0] A = 0 1 0 0 -->B=[ 1 ; 1 ] ; -->C=[ 1 , 1 ] ; -->S1 =syslin( ’c’ ,A,B,C) S1 = X˙ ( t) = 0 1 X ( t) + 1 U ( t) 0 0 1 Y ( t) = ( 1 1 ) X ( t) -->ss2tf ( S1 ) ans = 1 + 2 s s 2 Advanced Interfaces for symbolic calculus Switches: • p′ ( x) x Mathemagix derive(p(x)^x, x) + log ( p( x)) p( x) x ⇒ p( x) Substitution: • The derivative of p( x) x w.r.t x is: derive( p( x) x , x) . p′ ( x) x Ctrl+Return The derivative of p( x) x w.r.t x is: + log ( p( x)) p( x) x. ⇒ p( x) Label/reference evaluation: • func var The derivative of p( a) x w.r.t. x is: derive( func, var) . func var The derivative of p( a) x w.r.t. x is: p( a) x log ( p( a)) . ⇒ Spreadsheet: • a x =derive( a1 , x) a x a xa =derive( a2, x) xa xa − 1 a ⇒ ′ ′ u( x) v( x) =derive( a3, x) u( x) v( x) u ( x) v( x) + v ( x) u( x) Interoperability Possibles imports: HTML / MathML. • LAT X (demo). • E BibT X. • E Possibles exports: Paper (ps, pdf). • Web (HTML/MathML). • LAT X. • E BibT X. • E XML Tree (without DTD). • Plain text. •.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us